Image processing device and image processing method

The image processing apparatus enhances the balance between extraction accuracy and image quality in electrophotography by device-specific embedding techniques, addressing the challenges faced by existing methods in balancing these factors.

JP7802488B2Active Publication Date: 2026-01-20CANON KK
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2021178185
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-10-29
Publication Date
2026-01-20
Estimated Expiration
2041-10-29

AI Technical Summary

Technical Problem

Existing techniques for embedding information in printed documents using methods other than inkjet printing, such as electrophotography, face challenges in balancing the extraction accuracy of embedded information with inconspicuous image quality.

Method used

An image processing apparatus that acquires image data and information specifying the printing device, determines embedding conditions based on the device type, and generates a multiplexed image for printing, using specific masks and color modulation to embed information in a way that minimizes visibility while ensuring accurate extraction.

Benefits of technology

Improves the balance between extraction accuracy and image quality in printing methods other than inkjet printing by using device-specific embedding conditions and masks to make the embedded information less noticeable.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007802488000001
    Figure 0007802488000001
  • Figure 0007802488000002
    Figure 0007802488000002
  • Figure 0007802488000003
    Figure 0007802488000003
Patent Text Reader

Abstract

To improve the balance between image quality and the accuracy of extracting embedded information in a printing method other than an ink jet method.SOLUTION: An image processing apparatus creates a print document embedded with specific information, and comprises: first acquisition means that acquires image data used for printing; second acquisition means that acquires specific information; receiving means that receives designation of a printer that executes printing; embedding condition determination means that determines a condition in embedding the specific information in the image data according to the type of the received printer; multiplexed image creation means that executes embedding of the specific information according to the condition determined by the embedding condition determination means to create a multiplexed image; and control means that controls the printer to print the multiplexed image.SELECTED DRAWING: Figure 13
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a technique for embedding information in a print document. [Background technology]

[0002] 2. Description of the Related Art There is a known technique for embedding management information when printing an electronic document on paper using an inkjet printing method.

[0003] Patent Document 1 describes a technique for embedding inconspicuous information in printed matter using an inkjet method. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Laid-Open No. 2000-299779 Summary of the Invention [Problem to be solved by the invention]

[0005] However, Patent Document 1 does not anticipate embedding using printing methods other than inkjet printing, such as electrophotography. Therefore, when a similar process is performed using a printing process other than inkjet printing, the process is performed with the same intensity as in inkjet printing, making it difficult to balance the extraction accuracy of the embedded information with inconspicuous image quality.

[0006] The present invention aims to improve the balance between the extraction accuracy of embedded information and image quality in printing methods other than the inkjet method. [Means for solving the problem]

[0007] An image processing apparatus according to one aspect of the present invention generates a print document in which specific information is embedded. An image processing apparatus, comprising: a first acquisition means for acquiring image data to be used for printing; a second acquiring means for acquiring information specifying the printing device to be printed; and embedding the specific information in the image data according to the type of the printing device that has been accepted. an embedding condition determining means for determining a condition for embedding; a multiplexed image generating means for embedding the specific information and generating a multiplexed image; a control means for controlling the printing device to print the multiplexed image; 、 Equipped with The embedding condition determination means executes embedding in a plane according to the type of the printing device. Especially It is a sign. [Effects of the Invention]

[0008] According to the present invention, it is possible to improve the balance between the extraction accuracy of embedded information and image quality in printing methods other than the inkjet method. [Brief explanation of the drawings]

[0009] [Figure 1] FIG. 1 is a diagram illustrating a system configuration. [Figure 2] 10 is a flowchart showing a flow when printing an original print document. [Figure 3] FIG. 10 is a diagram illustrating an example of a page image. [Figure 4] FIG. 10 is a diagram illustrating an example of a mask. [Figure 5] FIG. 2 is a diagram showing a pattern formed by a mask. [Figure 6] FIG. 10 is a diagram illustrating an example of a mask. [Figure 7] FIG. 2 is a diagram showing a pattern formed by a mask. [Figure 8] 10 is a flowchart showing the flow of copying an original printout. [Figure 9] FIG. 10 is a diagram showing the spatial frequency characteristics of a pattern used for embedding. [Figure 10] FIG. 10 is a diagram showing details of the tampering check process. [Figure 11]FIG. 10 is a diagram illustrating a pattern emphasis mask. [Figure 12] FIG. 10 is a diagram illustrating a modified example of the embedding method. [Figure 13] 10 is a flowchart showing a flow when printing an original print document. [Figure 14] 10 is a flowchart showing a flow when printing an original print document. [Figure 15] FIG. 10 is a diagram illustrating an example of a mask. [Figure 16] 1 is a flowchart showing a procedure for printing an original printed document. [Figure 17] FIG. 10 is a diagram showing a density change table. DETAILED DESCRIPTION OF THE INVENTION

[0010] Hereinafter, embodiments for carrying out the technology of the present disclosure will be described with reference to the drawings. Note that the following embodiments do not limit the invention according to the claims, and not all of the combinations of features described in the embodiments are necessarily essential to the solution of the invention.

[0011] In the following embodiments, an example in which document ID information is used as embedded information will be described. As a specific example of use, an example in which the original is guaranteed will be described. The following definitions apply to these terms. In this specification, the term "original" refers to an electronic document (digital document) registered and managed together with information indicating the authenticity of its contents, and the term "original printout" refers to a printout printed using the data of the electronic document. Therefore, for example, a public document such as the aforementioned "copy of resident registration card" issued by a government office corresponds to the "original printout." Furthermore, the term "copy of original" refers to a printout obtained by copying the "original printout" using an image processing device with a copying function. Therefore, for example, a copy of the aforementioned "copy of resident registration card" corresponds to the "copy of original." The following embodiments are not limited to those that guarantee the original, but can be generally applied to multiplexing processes that embed predetermined information on paper in a form that is difficult for users to see.

[0012] <<Embodiment 1>> <System configuration> FIG. 1 is a block diagram showing the configuration of a printing system according to this embodiment. As shown in FIG. 1, this printing system has an MFP (Multi Function Printer) 40 and an MFP 60 as printing devices, and a PC 20 as a host device. The MFP 40 has multiple functions, such as a printer function and a scanner function, and also has a copy function that combines these functions. The MFP 40 may also have a function to save and transmit image data to be printed and a function to send and receive faxes. The hardware configurations of the MFP 40 and the PC 20 will be described below.

[0013] The MFP main body 40, which uses an inkjet printing method, is mainly composed of the following elements: The CPU 41 is an arithmetic processing unit that controls the entire MFP 40 and performs, for example, the copy process (described below) in accordance with programs stored in the ROM 43 and RAM 42. The RAM 42 is a volatile storage device that temporarily stores programs and data. The ROM 43 is a non-volatile storage device that stores table data and programs used in various processes (described below). The data transfer interface (DATA TRANSFER I / F) 44 controls the sending and receiving of data between the MFP 60 and the PC 20. The print controller (PRINT Controller) 45 controls the heating operation of a heater mounted on a print head (not shown) based on print data to eject ink. The image processing accelerator (IMAC) 46 is an arithmetic processing unit that can perform image processing faster than the CPU 41. Note that the image processing accelerator 46 is not necessarily required; the table parameter creation process and image processing described above may be performed solely by the CPU 41, depending on the printer specifications. A scanner controller 47 controls the emission of an LED mounted on a scanner unit (not shown), acquires light intensity information from the scanner unit, and controls writing to RAM 42. In this way, an image of a document set on a document table (not shown) is read. A motor controller 48 controls a plurality of motor units (not shown) to move the recording head relative to the recording paper and to move the scanner unit relative to the document.

[0014] Furthermore, MFP main body 60, which uses an electrophotographic printing method, has the same configuration as MFP main body 40, which uses an inkjet printing method, but the printing device portion is different. Print controller 65 performs printing processing by developing and transferring data onto the drum surface according to control parameters from a predetermined address in RAM 62. Note that the configurations of MFP 40 and MFP 60 are not limited to those shown in the drawings, and may also include, for example, a network interface that connects to an external network and communicates with other external PCs, etc.

[0015] The PC 20 is primarily composed of the following elements: The CPU 21 is an arithmetic processing unit that controls the entire PC 20 and executes, for example, the printing of an original document (described later) in accordance with programs stored in the HDD 23 and RAM 22. The RAM 22 is volatile storage and temporarily stores programs and data. The HDD 23 is nonvolatile storage and also stores programs and data. The data transfer interface (DATA TRANSFER I / F) 24 controls the transmission and reception of data between the MFP 40 and the MFP 60. This data transmission and reception can be performed via a wired connection such as USB, IEEE 1394, or LAN, or a wireless connection such as Bluetooth or WiFi. The keyboard and mouse interface (KEYBOARD MOUSE I / F) 25 is an interface that controls a human interface device (HID) such as a keyboard or mouse. The display interface (DISPLAY I / F) 26 controls the display on a display (not shown). A network interface (Network I / F) 27 connects the PC 20 to an external network, communicates with one or more external PCs, and issues document ID matching requests, result requests, document data requests, and the like.

[0016] <Original printing process> Next, the flow of printing an original electronic document will be explained with reference to the flowchart in Figure 2. The series of processes shown in the flowchart in Figure 2 begins when a user selects an electronic document to be printed via the UI of a predetermined printing application installed on PC 20 and instructs printing that includes embedding information indicating its authenticity. In the following explanation, the symbol "S" denotes a step.

[0017] In S201, data of an electronic document designated to be printed is acquired. In this embodiment, various original electronic documents are stored and managed in an external PC (not shown). PC 20 transmits an acquisition request for a specific electronic document to the external PC via network interface 27, and receives and acquires data for printing the designated electronic document, specifically PDL data, from the external PC. Here, PDL stands for Page Description Language, and is composed of a set of drawing commands for each page. Types of drawing commands are defined for each PDL specification, and in this embodiment, the following three types are mainly used as examples. TEXT drawing command: (X1, Y1, color, font information, string information) BOX drawing command: (X1, Y1, X2, Y2, color, fill shape) IMAGE drawing command: (X1, Y1, X2, Y2, image file information) In addition to the three types mentioned above, there are also the DOT drawing command for drawing points, the LINE drawing command for drawing lines, and the CIRCLE drawing command for drawing arcs, and these drawing commands are used depending on the application. Commonly used PDLs include PDF (Portable Document Format) proposed by Adobe, XPS proposed by Microsoft, and HP-GL / 2 proposed by HP.

[0018] Figure 3 is a diagram showing an example of an image of one page of an electronic document (hereinafter referred to as a "page image"). The size of the page image 300 shown in Figure 3 is assumed to be 600 pixels wide and 900 pixels high. The PDL corresponding to the page image 300 is shown below. <PAGE=001> <text>50,50, 550, 100, BLACK, STD-18, "ABCDEFGHIJKLMNOPQR”< / text> <text>50,100, 550, 150, BLACK, STD-18, "abcdefghijklmnopqrstuv”< / text> <text>50,150, 550, 200, BLACK, STD-18, "1234567890123456789”< / text> <box> 50, 300, 200, 450, GRAY, STRIPE< / box> 250, 300, 550, 800, “PORTRAIT.jpg”

[0019] The first line of the above PDL<PAGE=001> is a tag that indicates the number of pages. Normally, PDL is designed to be able to describe multiple pages, and tags that indicate page divisions are written in the PDL. In the above example, up to the 9th line indicates that it is the first page. If there is a second page,<PAGE=002> The second line will be written as follows: <text> From the third line< / text> The text is drawn up to the end of the line. In the text drawing command, the first two coordinates indicate the coordinates of the top left of the drawing area (X1, Y1), and the next two coordinates indicate the coordinates of the bottom right of the drawing area (X2, Y2). Next, it is written that the color is "BLACK (black: R=0, G=0, B=0)", the font is "STD (standard)", the font size is 18 points, and the string to be drawn is "ABCDEFGHIJKLMNOPQR". The fourth line <text> From the 5th line< / text> and the sixth line <text> From the 7th line< / text> The strings to be drawn correspond to "abcdefghijklmnopqrstuv" and "1234567890123456789". <box> from< / box>The lines up to are the BOX drawing command, with the first two coordinates indicating the upper left coordinate (X1, Y1) of the drawing start point, and the next two coordinates indicating the lower right coordinate (X2, Y2) of the drawing end point. The color is then specified as "GRAY (gray: R=128, G=128, B=128)" and the fill style as "STRIPE." Line 9 is the IMAGE drawing command. The first two coordinates indicate the upper left coordinate (X1, Y1) of the drawing area, and the next two coordinates indicate the lower right coordinate (X2, Y2) of the drawing area. It also states that the file name of the image in the specified drawing area is "PORTRAIT.jpg." Note that ".jpg" is the file extension, indicating that it is a JPEG file, a commonly used image compression format. Finally, line 10 indicates that the drawing of the page has finished. Note that the document data actually retrieved is often a combination of PDL data with font data and image files added. This is because when font data and image files are managed separately, the text and image portions cannot be formed with drawing commands alone, and there is insufficient information to form the image to be printed. In this step, document data including this PDL data is obtained by accessing an external PC.

[0020] In S202, information indicating the authenticity of the electronic document to be printed is acquired. In this embodiment, a request for information indicating the authenticity of the electronic document is sent to the external PC via the network interface 27, and the information is received and acquired. Here, document ID information is used as the information indicating the authenticity of the electronic document. The document ID information is information of a predetermined number of bits (32 bits in this embodiment) calculated using a hash function based on the document data (a combination of PDL data, font data, and image files). If even one byte of the digital data constituting the electronic document is changed, different document ID information is calculated, and therefore a unique document ID is associated with each electronic document. The risk of document ID information tampering may be reduced by having multiple external PCs collaborate to store and manage electronic document files and document ID information, employing a system configuration such as a blockchain. If the PC 20 has sufficient resources and can manage document ID information internally, internal matching processing may also be performed.

[0021] In S203, rendering processing is performed based on the document data acquired in S201. In this rendering processing, each drawing command included in the PDL data is executed to generate image data in bitmap format, which is composed of color information for each pixel. For example, in the case of the page image 300 shown in FIG. 3, a bitmap image of 600 x 900 pixels is generated. In this embodiment, each pixel of the bitmap image has 256 gradations, each with 8 bits for RGB.

[0022] In S204, the document ID information obtained in S202 is embedded in the bitmap image generated in S203. The process of embedding document ID information in a bitmap image is called "multiplexing" or "multiplexing encoding." When attempting to copy a printout obtained by printing a bitmap image that has undergone this multiplexing process, the document ID information can be extracted (decoded) from a scanned image of the printout, making it possible to determine whether the printout to be copied is the "original printout."

[0023] Handling information on an information processing device such as the PC 20 essentially means handling binary data. Binary data is information expressed as a combination of "0" and "1," and specific meanings are created when these "0"s or "1"s are connected in succession. For example, when handling the English word "hello" as binary data, using Shift-JIS, one of the character codes, the letter "h" corresponds to the binary data "01101000." Similarly, "e" corresponds to the binary data "01100101," "l" to "01101100," and "o" to "01101111." In other words, the string "hello" can be expressed in binary data as "0110100001100101011011000110110001101111." Conversely, if you can obtain the binary data "0110100001100101011011000110110001101111", you can obtain the text information representing the English word "hello." Based on this idea, you can see that multiplexing can be achieved by embedding specified data within an image so that it can be determined to be either "0" or "1."

[0024] <Multiplexing processing> Figures 4(a) and (b) show examples of masks consisting of 8x8 pixels used to generate "0" and "1." Figure 4(a) shows a mask for generating "0," and Figure 4(b) shows a mask for generating "1." By adding the values ​​in the mask to the pixel values ​​of a bitmap image, a periodic pattern can be created for each 8x8 pixel region in the image. As described above, the bitmap image of this embodiment is represented by 8 bits per color, and each pixel is assigned a value between 0 and 255. Values ​​outside the range of 0 to 255 cannot be used as image data, so if the addition result is less than 0 or a value greater than or equal to 256, the value of the addition result is generally replaced with 0 or 255 to bring it within the valid range. In the masks of Figures 4(a) and (b), pixel values ​​are changed by "-10" or "0." However, if all pixel values ​​in the bitmap image corresponding to the masked region are "0," all values ​​in that region will be "0." Note that, although the case of 8 bits per color is described here, this is not limiting. When dealing with digital images, no matter how many bits are used to represent them, there is a valid range, and changes that go outside that range cannot be made.

[0025] Figures 5(a) and (b) are diagrams visually showing the patterns formed in a bitmap image by the masks in Figure 4(a) and (b) above. In the masks in Figures 4(a) and (b), the position of "-10" is represented by solid black, and the position of "0" is represented by hatching. As can be seen from Figures 5(a) and (b), in the bitmap image after the masks are applied, a diagonal line descending to the left appears as a "pattern representing 0" and a diagonal line descending to the right appears as a "pattern representing 1."

[0026] Here, pseudo-code for alternately applying the masks in FIG. 4(a) and FIG. 4(b) to the entire bitmap image is shown below. 01: int i, j, k, l; 02: int width = 600, height=900; 03: unsigned char *data = image data; 04: int **maskA = maskData; 05: bool isMaskA = true; 06: for(j = 0; j < height; j+=8){ 07: for(i = 0; i < width; i+=8){ 08: for(k = 0; k < 8; k++){ 09: for(l = 0; l < 8; l++){ 10: if(isMaskA == true) { 11: data[(i+k)+(j+l)*width] += maskA[k][l]; 12:} 13:} 14:} 15:} 16:}

[0027] In this embodiment, the above pattern data is embedded only in the B value of the RGB values ​​of each pixel in the bitmap image. This is because when printing on a white area of ​​paper using four types of ink (CMYK), the Y ink has lower visibility than the CMY inks. When multiplexing, it is preferable to minimize the impact of the embedded pattern on the original image, i.e., to make it as inconspicuous as possible. RGB, the three primary colors of light, and CMY, the three primary colors of color, are complementary to each other, with R and C, G and M, and B and Y having opposite hues, respectively. This means that modulating the B value of the RGB values ​​significantly changes the amount of Y ink used. Therefore, in this embodiment, only the B value of the RGB values ​​is modulated to control the density fluctuation of the Y ink to be large.

[0028] In the case of the page image 300 shown in Figure 3, the white paper area is sufficiently large, and the area excluding the TEXT drawing area 301, BOX drawing area 302, and IMAGE drawing area 303 is the white paper area. In this case, the masks shown in Figures 4(a) and 4(b) may not properly embed pattern data in each drawing area other than the white paper area. For example, if a drawing area is solid black (R=0, G=0, B=0), the embedding result will also be solid black (R=0, G=0, B=0). Therefore, when embedding pattern data outside the white paper area, especially in the image drawing area, it is preferable to apply masks such as those shown in Figures 6(a) and 6(b). The masks in Figures 6(a) and 6(b) are masks that change each pixel of the bitmap image by "-10," "0," and "+10." In the case of the masks shown in Figures 6(a) and 6(b), even if all pixel values ​​in the bitmap image corresponding to the masked area are "0," the pixel values ​​of the corresponding area will ultimately be "0" or "+10." Therefore, pattern data can be embedded into all pixels in the bitmap image. Figures 7(a) and 7(b) visually illustrate the patterns imparted to the bitmap image by the masks shown in Figures 6(a) and 6(b). In the masks shown in Figures 6(a) and 6(b), the "-10" position is represented by solid black, the "0" position by hatching, and the "+10" position by solid white. As can be seen from Figures 7(a) and 7(b), the bitmap image after the masks are applied will have multiple diagonal lines sloping downward to the left with different densities as the "0" pattern and multiple diagonal lines sloping downward to the right with different densities as the "1" pattern. Note that, since there is a high probability that there will be many blank areas in the text and box drawing areas, it is preferable to apply the masks shown in Figures 4(a) and 4(b). However, even for TEXT and BOX drawing areas, the masks shown in Figures 6(a) and 6(b) may be appropriate depending on the specified color, character thickness, etc. Also, even for IMAGE drawing areas, there may be cases where the area is very close to the white paper area. For this reason, the type of mask to apply may be determined by obtaining a density histogram for each drawing area.For example, if the maximum value of the RGB value is greater than the threshold, the masks in Figures 4(a) and 4(b) are applied, and if it is equal to or less than the threshold, the masks in Figures 6(a) and 6(b) are applied. Alternatively, the input color space is L. * a * b * In this case, the luminance is L * The mask to be applied may be switched by comparing the value with a threshold value, thereby enabling reliable embedding to be achieved.

[0029] Returning to the explanation of the flowchart in FIG.

[0030] In S205, a print image is generated based on the multiplexed bitmap image (hereinafter referred to as the "multiplexed image") generated in S204. A known method may be used to generate this print image. In this embodiment, each pixel of the multiplexed image is subjected to color conversion processing, color separation processing, output characteristic conversion processing, and quantization processing. Each processing will be briefly described below.

[0031] (Color conversion processing) Color conversion processing converts the pixel values ​​(RGB values) of a multiplexed image so that they can be optimally reproduced on the MFP 40. Generally, color values ​​specified in PDL drawing commands are set to be optimally displayed on a display, and if those color values ​​are output to a printer as is, the output will have a different color tone than what is seen on the display. Therefore, color conversion processing is performed to absorb the color differences between the two. This color conversion processing uses a three-dimensional lookup table (LUT) that associates combinations of input pixel values ​​(Rin, Gin, Bin) in the multiplexed image with combinations of optimal output pixel values ​​(Rout, Gout, Bout). Currently, the input values ​​Rin, Gin, and Bin each have 256 gradations. Therefore, it is ideal to prepare a table (Table1

[0256]

[0256]

[0256] [3]) with a total of 16,777,216 pairs of 256 x 256 x 256 output values ​​(Rout, Gout, Bout) as shown below. Rout = Table1[Rin][Gin][Bin][0] Gout = Table1[Rin][Gin][Bin][1] Bout = Table1[Rin][Gin][Bin][2] However, known techniques for reducing the table size may be used, such as reducing the number of grids in the LUT from 256 grids to, for example, 16 grids, and determining the output value by interpolating table values ​​between the grids.

[0032] (Color separation processing) Color separation processing is a process that converts the output values ​​Rout, Gout, and Bout of the color conversion processing into output values ​​for each ink color (here, the four colors CMYK) to be recorded on paper using the inkjet method. There are various ways to achieve this color separation processing. In this embodiment, a three-dimensional lookup table (Table 2

[0256]

[0256]

[0256] [4]) is used that associates the combinations of the above-mentioned output pixel values ​​(Rout, Gout, Bout) with the combinations of ink color pixel values ​​(C, M, Y, K) shown below. C = Table2[Rout][Gout][Bout][0] M = Table2[Rout][Gout][Bout][1] Y = Table2[Rout][Gout][Bout][2] K = Table2[Rout][Gout][Bout][3] In this case, it is preferable that only the Y value of the CMYK values ​​corresponding to the result of modulating the paper-white region in the multiplexing process of S204 has a value greater than 0. More specifically, it is preferable that the Y value of the CMYK values ​​corresponding to the region where pixel values ​​of R=255, G=255, B=255 are converted to pixel values ​​of R=255, G=255, B=245 has a value greater than 0 and a value closer to 0 that is smaller than the Y value, as explained in S204. The reason for this is that it is desirable to reduce the visibility of the embedded pattern. Note that, as with the color conversion process described above, known techniques for reducing the table size may be used.

[0033] (output characteristic conversion processing) The output characteristic conversion process converts the density of each CMYK ink color into a print dot rate. Specifically, for example, the density of 256 levels for each color is converted into a dot rate of 1024 levels for each color. This output characteristic conversion process uses a one-dimensional lookup table (Table 3[4]

[0256] ) that sets the print dot rate (Cout, Mout, Yout, Kout) shown below, which corresponds to the density of each ink color. Cout = Table3[0][C] Mout = Table3[1][M] Yout = Table3[2][Y] Kout = Table3[3][K] As in the case of the color conversion process and color separation process described above, known techniques for reducing the table size may be used.

[0034] (quantization processing) The quantization process converts the printing dot count rates (Cout, Mout, Yout, Kout) of each ink color described above into the quantized values ​​(Cdot, Mdot, Ydot, Kdot) shown below, which represent whether the printing dot of each pixel is on or off. Cdot = Halftone[Cout][x][y] Mdot = Halftone[Mout][x][y] Ydot = Halftone[Yout][x][y] Kdot = Halftone[Kout][x][y] The above are quantized values ​​for the dithering method, and by comparing them with threshold values ​​in the dithering matrix corresponding to each pixel position, a value indicating whether the recording dot of each ink color is on or off can be obtained. In this case, the occurrence probability of each recording dot is Cout / 1023, Mout / 1023, Yout / 1023, Kout / 1023. Note that the quantization processing method is not limited to the dithering method, and other methods such as error diffusion may also be used.

[0035] By executing the above-described processes in order, a print image is generated from the multiplexed image. Returning to the explanation of the flowchart in FIG.

[0036] In S206, the print image data generated in S205 is sent together with the print instruction to the MFP 40 or another printer (not shown), and the print process is executed by the destination printer.

[0037] The above is the process leading up to the generation of the original print. In this embodiment, the B value of the RGB values ​​is modulated during the multiplexing process (S204). However, modulation can also be performed on the CMYK values. In this case, the pixel values ​​of the paper white area are Y=0, M=0, C=0, and K=0, so positive values ​​must be used for modulation. In the case of the masks illustrated in Figures 4 and 6, the signs of the modulation values ​​in the mask are inverted, i.e., "-10" becomes "+10" and "+10" becomes "-10." Modulation performed on the CMYK values ​​in this way provides greater control over limiting the ink applied to the paper white area to Y ink only. On the other hand, modulation performed on the RGB values ​​provides greater control over suppressing hue fluctuations when embedding in the image drawing area. Therefore, it is preferable to select an appropriate modulation method depending on the characteristics of the recording process, such as electrophotography or inkjet, and the ratio of paper white, text, and image areas within the page image to be printed.

[0038] <Copying of "original printouts"> Next, the flow of copying the "original printout" that is the result of the above-mentioned original printing process using the MFP 40 will be described with reference to the flowchart in Fig. 8. The series of processes shown in the flowchart in Fig. 8 begins when a user places the original printout on a platen (not shown) and issues a copy instruction via the UI (user interface) of the MFP 40. In the following description, the symbol "S" denotes a step.

[0039] First, in S811, a printed material to be copied that is set in the MFP 40 is read by a built-in scanner unit (not shown). To read this printed material, LED light is irradiated onto the printed material placed on the platen, and the reflected light is converted into an analog electrical signal by an imaging element such as a CCD that faces each pixel.

[0040] In the next step S812, the analog electrical signal obtained in S811 is digitized to obtain a bitmap image in the RGB color space. At this time, image processing such as MTF correction, input correction, shading correction, and color conversion is performed on each pixel of the bitmap image. Each process is briefly described below.

[0041] <MTF correction processing> MTF (Modulation Transfer Function) correction is a correction process related to the resolution of the scanner unit's reading performance. When an image is optically read using a scanner unit, the image becomes blurred due to factors such as deviation from the focus position or the performance limits of the lens itself, so a certain degree of restoration is performed using filter processing, etc. In this case, if strong enhancement processing is used to completely restore the image, image defects such as blown-out highlights and enhancement of image noise and dust pixels will become more noticeable, so it is necessary to design the filter strength by balancing the image quality improvement with the defects. Below is an example of an edge enhancement filter that multiplies the center of the image by 5 and multiplies the pixel values ​​of the top, bottom, left, and right pixels by -1. R'[x][y] = R[x][y]×5-R[x-1][y]-R[x+1][y]-R[x][y-1]-R[x][y+1] G'[x][y] = G[x][y]×5-G[x-1][y]-G[x+1][y]-G[x][y-1]-G[x][y+1] B'[x][y] = B[x][y]×5-B[x-1][y]-B[x+1][y]-B[x][y-1]-B[x][y+1]

[0042] (Input correction processing) Input correction is the process of converting the output value of the CCD (image sensor), which is originally a photon quantity, into a brightness that matches the sensitivity of the human eye. This converts, for example, an R'G'B' signal with 4096 gradations for each color into a color intensity value (R', G', B') with 1024 gradations for each color. This conversion uses the one-dimensional lookup table shown below (Table 4[4]

[4096] ), which sets the optimal recording dot count rate for each ink color density. R” = Table4[0][R'] G” = Table4[1][G'] B” = Table4[2][B'] However, known techniques for reducing the table size may be used, such as reducing the number of grids in the LUT from 4096 grids to, for example, 256 grids, and determining the output value by interpolating table values ​​between the grids.

[0043] (Shading correction processing) Shading correction reduces uneven color and density caused by differences in reading sensitivity at each pixel position due to manufacturing and assembly variations in the lenses, LEDs, CCDs, and other components that make up the scanner. For example, R"G"B" signals with 1024 gradations for each color are converted into color intensity values ​​(R"', G"', B"') with 256 gradations for each color. This conversion uses the following one-dimensional lookup table (Table 5[x][3]

[1024] ), which specifies the density adjustment value for each pixel position in the X direction (the direction in which the scanner lens is arranged). R”' = Table5[x][0][R”] G”' = Table5[x][1][G”] B”' = Table5[x][2][B”] As in the case of the input correction process described above, known techniques for reducing the table size may be used.

[0044] (Color conversion processing) The 256-level color intensity values ​​(R"', G"', B"') for each color calculated through the processing up to this point are values ​​specific to the scanner unit, as opposed to when printing. The color conversion processing here converts the values ​​specific to the scanner unit into RGB values ​​(Rout, Gout, Bout values) suitable for display on the display. The input values ​​R"', G"', and B"' each have 256 levels. Therefore, for this conversion, the following three-dimensional lookup table (Table 6

[0256]

[0256]

[0256] [3]) is used, which has a total of 16,777,216 sets of output values ​​(256 x 256 x 256). Rout = Table1[R”'][G”'][B”'][0] Gout = Table1[R”'][G”'][B”'][1] Bout = Table1[R”'][G”'][B”'][2] As in the case of the input correction process and the shading correction process described above, a known method for reducing the table size may be used. In this way, a bitmap image is obtained.

[0045] In the next step S813, a process for extracting document ID information is executed for the bitmap image acquired in step S812. Specifically, a process is executed in units of a predetermined area (here, 8x8 pixels) to determine whether the pattern indicating "0" or "1" described above is formed within the bitmap image, and the process extracts the numerical sequence information represented by "0" and "1." By repeatedly applying this process to the entire bitmap image, the document ID information embedded by the multiplexing process when the original was printed is decoded. Information embedded by the multiplexing process is sometimes called "embedded information" or "multiplexed information." The process for decoding the embedded information will now be described in detail.

[0046] (Decoding process of embedded information) First, the location where the embedded information is embedded within the acquired bitmap image is detected. The embedded location can be detected by analyzing the spatial frequency characteristics of each unit area (here, an 8x8 pixel area). Figure 9 shows the spatial frequency characteristics of the pattern used for embedding. The horizontal axis represents horizontal frequency, and the vertical axis represents vertical frequency, with the frequency increasing with increasing distance from the origin. In this embodiment, two types of patterns corresponding to "0" and "1" are embedded in the image (see Figures 5 and 7 above). In this case, a value of "10" is subtracted from the B component of each of the RGB color components (in the case of the mask in Figure 4; in the case of the mask in Figure 6, an addition and subtraction are performed). As a result, for example, the left-sloping pattern formed in the image by the mask in Figure 4(a) generates a large power spectrum on line A02. Similarly, the right-sloping pattern formed in the image by the mask in Figure 4(b) generates a large power spectrum on line A01. Therefore, by detecting this power spectrum, data "0" or "1" can be extracted. It should be noted that, as a preprocessing step for power spectrum detection, edge detection can be performed to enhance the power spectrum.

[0047] The data extraction using frequency analysis described above requires accurate extraction of the analysis area from the image data, so a process to correct for misalignment of the coordinate position is also performed. For example, first, extraction of a unit area from a bitmap image and frequency analysis are repeated vertically and horizontally, shifting the area by one pixel at a time. If the image size is 600 pixels wide and 900 pixels high, this process is repeated a total of 64 times. The point where the spectrum is strongest is then set as the reference position for extraction. Then, by extracting the embedded information based on the reference position, the embedded sequence of "0"s or "1"s can be obtained with high accuracy.

[0048] In this embodiment, as explained in S204, the information to be embedded is text data, and its character code is a value quantified in "Shift JIS." In this case, in 1-byte Shift JIS code (half-width characters), for example, the alphabet "h" corresponds to binary data "01101000," "e" corresponds to "01100101," "l" corresponds to "01101100," and "o" corresponds to "01101111." Therefore, if the extracted numeric sequence of the embedded information is "0110100001100101011011000110110001101110001101111," the English word string "hello" is obtained. In this way, the document ID information embedded as embedded information is extracted.

[0049] Returning to the explanation of the flowchart in FIG.

[0050] In S814, it is determined whether extraction of document ID information was successful in S813. If extraction of document ID information was successful, the process proceeds to S815; if not, the process proceeds to S820. There are two possible cases where extraction fails: one is when document ID information was not embedded in the printed material to be copied (Possibility 1). The other is when document ID information was embedded in the printed material to be copied, but the printed material was dirty or had handwritten characters added later, making it impossible to correctly detect the predetermined pattern representing the embedded information (Possibility 2). In the case of Possibility 1, the process proceeds directly to S820. In the case of Possibility 2, the user may be notified by displaying a message stating, "You are about to copy an authentic document (original printed material) with an embedded document ID." This allows the user to know that they are attempting to copy a potentially inauthentic printed material, and gives them the opportunity to choose whether to cancel the copy operation or otherwise. For example, if the result obtained from the extraction process is between 1 bit and 31 bits inclusive out of the total 32 bits of document ID information, it can be determined that the possibility is 2 and a notification like this can be sent. Note that it is not completely impossible that a single pattern similar to the above-mentioned predetermined pattern is accidentally included in the image. Taking such rare cases into consideration, it is preferable to determine the possibility as 1 when less than 16 bits, half of 32 bits, are extracted, and to determine the possibility as 2 when between 16 bits and 31 bits inclusive are extracted.

[0051] In the following S815, a matching process is performed on the successfully extracted document ID information. In this embodiment, similar to the document ID acquisition process in S202, the MFP 40 accesses the external PC to request a matching and obtains the matching result. Specifically, a matching request to determine whether the extracted document ID information is officially registered and valid is transmitted via a network I / F (not shown), and the matching result is received and obtained from the external PC. Note that if the MFP 40 has sufficient resources and can manage document ID information internally, it is also possible to perform the matching process internally.

[0052] Next, in S816, the process is assigned depending on whether the document ID information extracted in S813 is officially registered and valid as a result of the comparison. If the document ID is valid, the process proceeds to S817, and if the document ID is invalid, the process proceeds to S820. If the document ID is invalid, the user may be notified by displaying a message saying, "You are attempting to copy an unauthentic document with an invalid document ID." This gives the user an opportunity to choose whether to cancel the copying operation, etc.

[0053] In S817, a check is performed to determine whether the printed material to be copied has been tampered with (tamper check process). The general flow of this tamper check process is as follows: First, the MFP 40 sends a document data acquisition request together with document ID information to an external PC via the network I / F 17. Then, the MFP 40 receives and acquires document data (PDL data) linked to the document ID information from the external PC, and performs rendering on the document data. This is the preprocessing. The bitmap image obtained by the rendering process is compared with the bitmap image acquired in S812 to determine whether tampering has occurred. The tamper check process will now be described in detail with reference to another flowchart shown in FIG. 10. Note that in the description of the flow in FIG. 10, the bitmap image obtained by the rendering process will be referred to as a "rendered image," and the bitmap image obtained by the document reading process will be referred to as a "scanned image."

[0054] <Details of the tamper check process> In S1001, a counter that counts pixels determined to be tampered with in S1010 (described later) is initialized. Specifically, the count number of the counter (number of tampered pixels) is set to "0."

[0055] In the next step, S1002, a normalization process is performed on the scanned image acquired in S812. This normalization process is performed to match the dynamic range between the scanned image and the rendered image. For example, the brightest part of a scanned image generally represents the color of the paper of the printed material being scanned, and in principle, has a certain density value. On the other hand, the brightest part of a rendered image is a pixel with pixel values ​​R=255, G=255, and B=255. The darkest part of a scanned image generally represents the black color of ink or toner, and in principle, has a brightness value due to some reflected light. On the other hand, the brightest part of a rendered image is a pixel with pixel values ​​R=0, G=0, and B=0. As such, there is an inherent difference between the brightest and darkest colors in the two images. Furthermore, if the printed material is output in color, there is also a difference in the color tone between the two images. For example, the most vivid red that can be printed has a lower saturation in the scanned image than the pixel values ​​(R=255, G=0, B=0) that represent the most vivid red in the rendered image. Therefore, each pixel value (RGB value) of the scanned image is normalized using the following equations (1) to (3) to find new pixel values ​​(Rnorm, Gnorm, Bnorm). Rnorm = (R - Rd) / (Rw-Rd)×255 Equation (1) Gnorm = (G - Gd) / (Gw-Gd)×255...Equation (2) Bnorm = (B - Bd) / (Bw-Bd)×255...Equation (3) By normalization processing using the above formulas (1) to (3), the RGB values ​​of the brightest color (white) in the scanned image become R=255, G=255, B=255, and the RGB values ​​of the darkest color (black) become R=0, G=0, B=0.

[0056] In the next step S1003, the normalized scanned image is subjected to a filter process, which performs stronger edge enhancement to make it easier to compare with the rendered image.

[0057] In the next step S1004, the image pattern representing the embedded information is removed from the scanned image after filtering. The print image generated in step S205 in the flow of FIG. 2 differs from the original document image (the image of the original electronic document) due to the multiplexing process (S203). Therefore, this process is performed to eliminate these differences as much as possible. Specifically, the pattern data embedded by the multiplexing process is subtracted from the scanned image data. This brings the scanned image closer to the state before the multiplexing process. In this embodiment, this is achieved by multiplying each value in the masks in FIGS. 4 and 6 by "-1" and adding the resulting value to each pixel of the scanned image.

[0058] Next, in S1005, the scanned image from which the embedded information has been removed is compared with the rendered image. Specifically, the rendered image and the scanned image from which the embedded information has been removed are compared pixel by pixel to determine the difference values ​​(ΔR, ΔG, ΔB) expressed by the following equations (4) to (6). ΔR = |R[x][y] of rendered image - R[x][y] of scanned image| Equation (4) ΔG = |G[x][y] of rendered image - G[x][y] of scanned image| Equation (5) ΔB = |B[x][y] of rendered image - B[x][y] of scanned image| Equation (6)

[0059] Next, in S1006, it is determined whether the difference values ​​(ΔR, ΔG, ΔB) obtained in S1005 exceed threshold values. In this embodiment, these are compared with threshold values ​​(Rth, Gth, Bth) previously set for each of the RGB channels, and if any of ΔR, ΔG, or ΔB exceeds the corresponding threshold, the process proceeds to S1007; if not, the process proceeds to S1008. The threshold values ​​are determined taking into consideration the characteristics of the scanner unit and the printing device, and in this embodiment, values ​​such as Rth=Gth=Bth=64 may be set.

[0060] In S1007, the count value of the counter indicating the number of tampered pixels is incremented (+1). After the counter is incremented, the process proceeds to S1008. Then, in S1008, it is determined whether or not comparison of pixel values ​​has been completed for all pixels. If there are any unprocessed pixels, the process returns to S1005 to continue processing, and if comparison of pixel values ​​has been completed for all pixels, the process proceeds to S1009.

[0061] In S1009, it is determined whether the count value of the counter indicating the number of tampered pixels exceeds a threshold value. In this case, the threshold value may be set to, for example, 3% of the total number of pixels, assuming cases where dust is mixed in when the scanned image is acquired. If the count value exceeds the threshold value, the process proceeds to S1010; if not, the process proceeds to S1011.

[0062] In S1010, the result of the tampering check process is determined to be no tampering, and the process ends. On the other hand, in S1011, the result of the tampering check process is determined to be tampered, and the process ends.

[0063] The above is the content of the tampering check process. Note that in this embodiment, the comparison is performed on a pixel-by-pixel basis, but this is not limited to this. For example, the comparison may be performed on a larger scale, such as by comparing the average values ​​in units of multiple pixel blocks. When the tampering check process is completed, the process proceeds to S818 in FIG. 8.

[0064] Returning to the explanation of the flowchart in FIG.

[0065] In S818, the bitmap image obtained in S812 is assigned to a different process depending on the result of the tampering check process. If no tampering is detected, the process proceeds to S819, and if tampering is detected, the process proceeds to S820. If the result of the tampering check process indicates tampering, the user may be notified by displaying a message stating, "You are attempting to copy a tampered document." This gives the user an opportunity to choose whether to cancel the copy operation or not.

[0066] Next, in S819, information indicating that the image is a copy of the "original printout" is added to the bitmap image acquired in S812. By applying an embedding method (e.g., modulating each RGB value) that is more visible than embedding document ID information, it becomes easier to recognize that the image is a photocopied printout rather than an "original printout." In addition, in conjunction with this addition process, the user may be notified by displaying a message indicating that "an attempt is being made to copy an original printout." This gives the user an opportunity to choose whether to cancel the copy operation or otherwise.

[0067] <Highlight embedded patterns in scanned images> The embedded pattern of the bitmap acquired in S812 deteriorates due to printing and scanning. Figure 11(a) shows a simplified representation of pattern deterioration, with a mask 1100 representing the extracted pattern. Region 1101 is a portion of the embedded pattern. Region 1102 is a portion of the embedded pattern, and compared to region 1101, the difference between the pixel values ​​of regions other than the embedded pattern is smaller, resulting in a weaker embedding strength.

[0068] If the embedded pattern in the scanned image is like mask 1100, it can be determined that the extracted embedded pattern is weak. Furthermore, if an error is corrected when extracting document ID information in S813, the pattern can also be determined to be weak. If the embedded pattern is weak, the embedded pattern in the scanned image is emphasized. Mask 1103 in FIG. 11(b) is an emphasis mask created based on pixels with a weak embedded pattern, based on FIG. 4(a).

[0069] Area 1104 sets the strength to be added to pixels with a weak embedded pattern. The strength may be set from the difference between area 1101 and area 1102, or may be set uniformly from a predetermined value. The same multiplexing process as in S204 is performed from the extracted document ID information. At this time, for areas where the embedded pattern is determined to be weak, an emphasis mask is added to the mask that creates the variation in FIG. 4, and the multiplexing process is performed. Alternatively, the embedded pattern can be emphasized by generating a pattern based on the created emphasis mask and emphasizing the scanned image based on that.

[0070] <Reducing the embedded pattern in the scanned image and overlaying a new embedded pattern> Alternatively, the embedded pattern in the scanned image may be reduced and multiplexed again. A method for reducing the embedded pattern involves applying a smoothing filter of a predetermined size to the scanned image. The filter size may be set based on the size of the embedded pattern (here, 8x8). An inverse filter may be calculated from the embedded pattern and used. If the pattern-embedded area is a blank area, a process may be performed to change the pixel values ​​to paper white, such as by removing the background. If the embedded pattern is added to a specific color plane, the reduction process may be performed only on that specific color.

[0071] The image with the reduced embedded pattern is subjected to a multiplexing process to embed the extracted text ID information in the same manner as in S204.

[0072] In the next step S820, a print image is generated based on the bitmap image acquired in step S812 or the bitmap image to which additional processing has been applied in step S819. This process corresponds to step S205 in the flow shown in Figure 2, and there is no particular difference, so a detailed explanation will be omitted. In the following step S821, printing processing is performed using the print image generated in step S820.

[0073] The above is the process flow when copying an original printed material. Note that instead of performing notification processing such as displaying a message in S814, S816, S818, and S819, control may be performed so that the copying process itself is automatically stopped at each point. This saves the user the trouble of having to confirm their intention each time.

[0074] Furthermore, the information added in S819 indicating that it is a copy can be said to be "information indicating that the content is legitimate and a copy" that guarantees that the original has not been tampered with. Therefore, character string information that more clearly expresses that the printed matter to be copied is a genuine document, such as "copy of original printed matter," may be added. Furthermore, even if it is determined in S818 that tampering has occurred, the process may proceed to generating a print image (S820) after adding the text "illegible (tampered) copy."

[0075] Alternatively, the genuine document ID information extracted from the "original printout" to be copied may be updated to document ID information indicating that it is a copy, and then re-embedded in the bitmap image and printed out in S820. This makes it possible to notify the user when an attempt is made to copy a printout in which the updated document ID information output in S820 is embedded. In this case, the document ID information indicating that it is a copy can be acquired and stored together with the document ID information acquired in the original printing process (S202) in a format similar to reservation ID information. This makes it possible to notify the user that it is a copy without having to check with an external PC.

[0076] As described above, according to this embodiment, when a "printed matter of an original" is copied, information indicating that fact is added as highly visible information, so that the user can easily recognize that it is a "copy of an original." Furthermore, when a user attempts to further copy the "copy of an original" obtained by the above-mentioned copying process, the copier can detect the additional information indicating that it is a copy and notify the user of that fact.

[0077] <Variation 1> In the above embodiment, an example has been described in which document ID information is multiplexed and embedded in units of 8x8 pixel regions. With this method, a predetermined pattern is formed in the high-frequency region of the image, making it possible to embed information in a form that is difficult for the user to see. However, the method of embedding information is not limited to this. For example, document ID information may be converted into a two-dimensional code and embedded in a form that is difficult for the user to see.

[0078] FIG. 12(a) shows an example of a two-dimensional code, and FIG. 12(b) shows the corresponding actual print pattern. In the example of FIG. 12(b), one dot is formed per 8x8 pixel area. The dot corresponding to the black pixel 1201 in the two-dimensional code in FIG. 12(a) corresponds to the dot 1202 in the print pattern shown in FIG. 12(b). In other words, no dots of the print pattern are formed at positions corresponding to white pixels in the two-dimensional code in FIG. 12(a). A specific process flow for achieving this is to first convert the document ID information into a two-dimensional code in the multiplexing process (S204) in the flow shown in FIG. 2, then convert it into pattern data of a group of spaced dots and embed it in the rendering image in predetermined area units. Then, in the subsequent print image generation process (S205), the spaced dots are formed using only Y ink, making them less visible.

[0079] When copying a printed material in which document ID information has been embedded using the method of this modified example, the document ID information can be extracted by extracting a two-dimensional code pattern formed of yellow dots in 8x8 pixel units from the read bitmap image and decoding it.

[0080] Furthermore, as an embedding method other than the two-dimensional code, for example, multiplexing may be performed by modulating a threshold value during quantization processing.

[0081] <Variation 2> In the explanation up to this point, it has been assumed that the document ID information indicating the authenticity of the original is embedded in a manner that makes it as indistinguishable as possible from the user's view during printing. However, the document ID information may also be embedded in a manner that makes it easily visible to the user (for example, by modulating the R and G values, which are the areas where the density fluctuations of the CMK inks become large).

[0082] In this case, the copying process may involve printing the rendering image generated during preprocessing of the tamper check process (S817) as is, or printing the bitmap image (S1004) from which the embedded data has been removed as is. Printing using either of these methods results in a printed product without embedded document ID information. From the user's perspective, the white area of ​​the copied printout does not contain visible pattern data, making it easy to recognize that it is not the "original printout." Furthermore, because the embedded data does not exist in the copied printout, if it is further copied, S814 will always return "No."

[0083] <Multiplexing according to the printing method> Up to this point, we have explained the flow for printing a multiplexed image using the inkjet method, but there is also a flow for printing a multiplexed image using the electrophotographic method. Therefore, from here on, we will explain how to determine the embedding conditions and generate a multiplexed image according to the printing method. The embedding conditions refer to conditions such as the color plane to be embedded, the strength of the mask used when embedding, or the color density of the print document. These conditions can be set using the pattern based on the specific embedding information, the amplitude of each pattern, and the period of each pattern.

[0084] Fig. 13 is a flow diagram illustrating the process of changing the color planes of an image to be multiplexed depending on the printing method. Here, the case of printing with an inkjet MFP main body 40 or an electrophotographic MFP main body 60 is described. The series of processes shown in the flowchart in Fig. 13 begins when a user selects an electronic document to be printed via the UI of a predetermined printing application installed on PC 20 and instructs printing with multiplexing.

[0085] In S1301, the PC 20 acquires document data. In this embodiment, the host PC 20 connects to an external PC via the NETWORK I / F 27 and requests and acquires the document data. In S1302, the PC 20 acquires document ID information that indicates the authenticity of the document data acquired in S1301. Detailed processing is the same as S202 in FIG. 2.

[0086] In S1303, the PC 20 performs rendering processing on the document data acquired in S1302. This is a step in which each drawing command described in the PDL is executed to form a bitmap image made up of color information for each pixel.

[0087] In S1304, the user specifies the model to print the print data with multiplexed document ID information. Specifically, the PC 20 creates and displays a list of printer models that can print on the UI that is displayed when the user requests printing, based on the model information obtained by communicating with the printer. The user specifies the model to print from the displayed model list. The PC 20 acquires the type of printer (printing method) based on the printer specified by the user. For the sake of explanation, it is assumed here that only inkjet or electrophotographic printers are connected as acceptable types of printers. Note that a screen may be displayed in the list of printer models on the UI that allows the user to select a printer while checking the printing method of the printer. The above is effective when the user does not know the printing method of the printer.

[0088] In S1305, the PC 20 switches the subsequent process depending on whether the printing method acquired in S1304 is electrophotographic or inkjet. If it is inkjet, the process proceeds to S1306, and if it is electrophotographic, the process proceeds to S1309.

[0089] In the processing of S1306 to S1308, a flow for printing a multiplexed image by inkjet printing will be described. In S1306, the PC 20 embeds the document ID information acquired in S1302 into the bitmap image rendered in S1303 to generate a multiplexed image. The rendered bitmap image is expressed in RGB space, and the embedding process is performed on the B plane, which has low visibility among the RGB. The details of the embedding process are the same as the process described in S204 of FIG. 2.

[0090] In S1307, the PC 20 generates an inkjet print image from the multiplexed image generated in S1306. The detailed generation method is the same as the process described in S205 of FIG. 2. That is, the process of this step also includes color separation, which converts RGB image data into CMYK image data. In S1308, the PC 20 transmits the inkjet print image generated in S1307 to the inkjet MFP main body 40 via the DATA TRANSFER I / F 24 in the host PC 20, and performs printing control. At this time, the DATA TRANSFER I / F 24 switches the print image destination based on the printing device specified in S1304. When printing is complete, the PC 20 ends this flow.

[0091] The process of S1309 to S1313 describes the flow for printing a multiplexed image using electrophotography. In S1309, the PC 20 performs color conversion on the bitmap image generated in S1303. This color conversion converts the RGB information of the bitmap image so that it can be printed appropriately by the MFP 60, which is an electrophotographic printer. Electrophotographic printing offers higher visibility than inkjet printing because the ink does not bleed onto the paper. Therefore, embedding highly visible ink colors other than yellow, which are used in the color materials of the MFP 60, would be conspicuous. Therefore, the RGB image data is embedded in the Y plane after color separation into CMYK image data. The detailed conversion method is the same as the color conversion process described in S205 of Figure 2, and color conversion is performed using Table 1 tailored to the MFP 60.

[0092] In S1310, the PC 20 performs ink color separation on the color-converted image generated in S1309 into the number of ink colors used in the MFP 60. In this embodiment, the MFP 60 is a four-color electrophotographic printer using cyan, magenta, yellow, and black. The detailed ink color separation process is the same as the ink color separation process described in S205 of FIG. 2, and the ink color separation is performed using Table 2 tailored to the MFP 60.

[0093] In S1311, the PC 20 embeds the text ID information acquired in S1302 into the ink color separation image generated in S1310 to generate a multiplexed image. As described above, the embedding process is performed on the Y plane separated into ink colors. Because the acquired text ID information is stored in binary, the embedding mask is switched based on the bit information. The two masks shown in Figures 4(a) and 4(b) are used as patterns. The text ID information is superimposed on the image by switching the mask based on the bit information of the text ID information and changing the target pixel value in the Y plane according to the modulation within the mask. Note that while the method of performing multiplexing on the Y plane has been described here, if the image area to be multiplexed uses inks other than yellow, it may be performed on a plane other than the Y plane.

[0094] In S1312, the PC 20 generates an electrophotographic print image from the multiplexed image generated in S1311. That is, the same processes as the output characteristic conversion process and quantization process described in S205 of Fig. 2 are performed. Note that in this step, since the color conversion process and color separation process have been performed in S1309 and S1310, these processes are not necessary. Table 3 used in the output characteristic conversion and the Halftone table used in quantization are processed using tables tailored to the MFP 60.

[0095] In S1313, the PC 20 transmits the electrophotographic print image generated in S1312 to the electrophotographic MFP main body 60 via the DATA TRANSFER I / F 24 in the host PC 20, and performs printing control. At this time, the DATA TRANSFER I / F 24 switches the print image destination based on the printing device specified in S1304. When printing is complete, the PC 20 ends this flow.

[0096] The above is a description of the flow explaining the process of changing the color plane of an image to be multiplexed depending on the printing method of the printing device. According to this embodiment, it is possible to improve the balance between the extraction accuracy of embedded information and image quality when using printing methods other than inkjet printing. Specifically, when a printing device using electrophotography printing is specified, the embedded information can be embedded in the Y plane of a CMYK image in a way that makes it less noticeable for each printing method, thereby reducing image quality degradation due to multiplexing.

[0097] This embodiment is also effective when multiplexing is performed using an inkjet method. Inkjet printing devices use a wide variety of ink types, including dark ink, light ink, and special colors. Depending on the gradation to be expressed, dark ink, light ink, or both may be used. Therefore, when multiplexing is performed only on a specific plane, such as a dark ink color plane, dots may not be ejected depending on the gradation. As a result, a multiplexed pattern may not be formed, potentially reducing extraction accuracy. In this embodiment, when printing using an inkjet method, the plane to be multiplexed is determined to be the B plane of RGB image data rather than CMYK image data, thereby eliminating the multi-ink color compatibility problem that occurs with inkjet printing.

[0098] <<Embodiment 2>> Next, we will explain how to change the embedded overlay strength depending on the printing method. The color development characteristics of printed documents differ between inkjet and electrophotographic methods. Electrophotography has better color development and higher visibility than inkjet. Therefore, when multiplexing using electrophotography, if the same embedding strength as inkjet printing is used, the overlay pattern will be noticeable in the printed document. Furthermore, if the embedding strength is uniformly weakened to avoid this, the inkjet method may not form the pattern sufficiently, resulting in reduced reading accuracy. Below, we will explain how to maintain a balance between the robustness of reading performance and image quality for each printing method by changing the embedded overlay strength depending on the printing method.

[0099] 14 is a flow diagram illustrating the process of changing the embedded superimposing strength depending on the printing method. Here, the case where printing is performed by an inkjet MFP main body 40 or an electrophotographic MFP main body 60 is described.

[0100] 13, the process of S1401 to S1404 is the same as S1301 to S1304, and therefore the description here is omitted. In S1405, the PC 20 switches the process depending on whether the printing method is electrophotography or inkjet. If it is inkjet, the process proceeds to S1406, and if it is electrophotography, the process proceeds to S1410.

[0101] In the processing of S1406 to S1409, a flow for printing a multiplexed image by inkjet printing will be described. In S1406, the PC 20 sets the embedding strength of the pattern to be multiplexed by inkjet printing. For the sake of explanation, the embedding strength is changed by changing the amount of variation when generating the embedding pattern.

[0102] FIG. 15 shows embedding masks of different strengths used for multiplexing. The masks are switched based on the binarized document ID information, so there are masks representing "0" and "1." The amount of variation in FIGS. 15(a) and (b) is greater than that in FIGS. 15(c) and (d). In other words, the masks in FIGS. 15(a) and (b) have stronger embedding strength than the masks in (c) and (d). In this embodiment, the inkjet method uses a mask with a strong embedding strength (a) or (b) (strength 1), while the electrophotographic method uses a mask with a weaker embedding strength (c) or (d) (strength 2). This is because the electrophotographic method has higher visibility than the inkjet method.

[0103] In S1406, the PC 20 acquires the superimposing intensity for the inkjet method, so the mask of intensity 1 in FIG. 15(a) or (b) is used during the multiplexing process. In S1407, the PC 20 embeds the acquired text ID information into the bitmap image generated in S1403 based on the superimposing intensity set in S1406, to generate a multiplexed image. The embedding process is performed on the B plane of the bitmap image at the set superimposing intensity. The details of the embedding process are the same as those described in S204 of FIG. 2, and the mask used during embedding is the set mask (intensity 1). S1408 to S1409 are the same as those of S1307 to S1308 of FIG. 13, so a description thereof will be omitted. When printing is completed, the PC 20 ends this flow.

[0104] In the processing of S1410 to S1415, a flow for printing a multiplexed image by electrophotography will be described. In S1410, the PC 20 sets the embedding strength of the pattern to be multiplexed by electrophotography. Here, during the multiplexing process, masks of strength 2 shown in (c) and (d) in Figures 15(a) and (b) are used, which have smaller variations than those shown in Figures 15(c) and (d).

[0105] In S1411, the PC 20 performs color conversion on the bitmap image generated in S1403. The detailed color conversion method is the same as the color conversion process described in S1309 of FIG. 13. In S1412, the color-converted image generated in S1411 is subjected to ink color separation into the number of ink colors used in the MFP 60. In this case, separation is performed into four colors: cyan, magenta, yellow, and black. The detailed processing content of the ink color separation is the same as the ink color separation process described in S1310 of FIG. 13.

[0106] In S1413, the acquired text ID information is embedded into the ink color separated image generated in S1412 based on the superimposing strength set in S1410 to generate a multiplexed image. Embedding processing is performed on the Y plane of the ink color separated image at the set superimposing strength. The mask used during embedding is the set mask (strength 2).

[0107] The description of S1414 to S1415 will be omitted as they are the same as the processing of S1312 to S1313 in Fig. 13. When printing is completed, the PC 20 ends this flow.

[0108] The above is a description of the flow for explaining the process of changing the embedded superimposing strength according to the printing method. According to this embodiment, it is possible to perform superimposing at a superimposing strength according to the printing method selected by the user. It is also possible to maintain a balance between the extraction accuracy of the embedded information and the image quality depending on the printing method.

[0109] In this embodiment, for the sake of explanation, the change in the superimposing intensity has been described using the amount of mask change as an example. However, the intensity may also be changed by switching the number of color planes to be embedded between the inkjet method and the electrophotographic method. For example, the intensity can be changed by multiplexing only the Y plane for electrophotography and multiplexing not only the B plane but also the R plane for inkjet printing. Furthermore, the embedding intensity may be changed by increasing the relative amount of variation by combining an increase in the amplitude of the mask with a decrease in the amplitude. In this case, the relative amount of variation is set to be smaller for the electrophotographic method than for the inkjet method. The embedding intensity may also be changed by changing the number of variable points in the mask. In this case, the embedding intensity is set to be smaller for the electrophotographic method than for the inkjet method.

[0110] <<Embodiment 3>> This embodiment describes a method for changing the density of an embedded image depending on the printing method. When an original printed using an electrophotographic method is read using a scanner or camera, dark areas, where the image density is above a predetermined value, strongly reflect the light source, which can degrade the image quality of the read image. As a result, the accuracy of extracting genuine text information from the read image decreases. Furthermore, even when printing a multiplexed original using an inkjet method, ink bleeding in dark areas can cause the multiplexed pattern to become distorted, resulting in a decrease in reading accuracy. This embodiment describes a method for reducing image quality degradation and improving the accuracy of extracting embedded information by adjusting the density of dark areas depending on the printing method.

[0111] 16 is a flow diagram illustrating the process of changing the density of the image to be embedded depending on the printing method. In this embodiment, too, the case where printing is performed by an inkjet MFP main body 40 or an electrophotographic MFP main body 60 will be described.

[0112] 13, the process of S1601 to S1604 is the same as S1301 to S1304, and therefore the description here is omitted. In S1605, the PC 20 switches the process depending on whether the printing method is electrophotography or inkjet. If it is inkjet, the process proceeds to S1606, and if it is electrophotography, the process proceeds to S1611.

[0113] In the processing of S1606 to S1610, a flow for printing a multiplexed image by inkjet printing will be described. In S1606, the PC 20 determines whether the image area to be multiplexed is a dark area. The method for determining whether it is a dark area may be to calculate the average brightness from the RGB values ​​of M×N pixels, and if the average brightness is smaller than a threshold, the M×N pixels are determined to be a dark area. For the sake of explanation, M and N are set to the same values ​​as the vertical and horizontal sizes of the image. The threshold may be, for example, 64 / 255, which is equivalent to 1 / 4 of the brightness range. If it is determined that a dark area is included, proceed to S1607; if it is determined that it is not included, proceed to S1608.

[0114] In S1607, the PC 20 changes the density of the image area to be multiplexed. The RGB space bitmap acquired in S1603 is acquired and converted from the RGB space to the Lab space. The pixel values ​​in the converted Lab space are changed using a conversion table.

[0115] FIG. 17 is a diagram showing tables by strength that are referenced when changing image density. The horizontal axis represents the input L value, and the vertical axis represents the output L value. Change table 1701 has a small change amount in the dark areas, while change table 1702 has a large change amount in the dark areas. Change table 1702 brightens the dark areas after conversion compared to change table 1701. By changing the L value using each table based on the input L value, it is possible to adjust the density of the dark areas. In this embodiment, change table 1701, which has a small change amount, is used for the inkjet method, and change table 1702, which has a large change amount, is used for the electrophotographic method. The tables are set in advance from measured values ​​so that the density values ​​of the dark areas for the inkjet method and the electrophotographic method become predetermined values.

[0116] In S1607, the PC 20 performs density conversion of the dark portion in the Lab space using the conversion table 1701, and performs multiplexing processing in the RGB space by converting the converted Lab back to RGB.

[0117] In S1608, the acquired text ID information is embedded in the bitmap image generated in S1603 or the density-adjusted image generated in S1607 to generate a multiplexed image. The multiplexing process is performed on the B plane of the image. Details of the embedding process are the same as those described in S204 of FIG. 2. Steps S1609 to S1610 are the same as steps S1307 to S1308 of FIG. 13, so a description thereof will be omitted. When printing is completed, the PC 20 ends this flow.

[0118] In the processing of S1611 to S1617, a flow for printing a multiplexed image by electrophotography will be described. In S1611, the PC 20 determines whether the image area to be multiplexed is a dark area, as in S1606. For the sake of explanation, the method for determining dark areas will be the same as in S1406, but if necessary, the determination threshold for dark areas may be set stricter for electrophotography than for inkjet printing. If it is determined that a dark area is included, the process proceeds to S1612; if it is determined that a dark area is not included, the process proceeds to S1613.

[0119] In S1612, the PC 20 changes the density of the image area to be multiplexed. The RGB space bitmap acquired in S1603 is acquired and converted from RGB space to Lab space. The pixel values ​​in the converted Lab space are converted using a conversion table 1702 that has a large amount of change. The converted Lab is then converted back to RGB.

[0120] In S1613, the PC 20 performs color conversion on the bitmap image generated in S1603 or the density-converted image generated in S1612. The detailed color conversion method is the same as the color conversion process described in S1309 of FIG.

[0121] In S1614, the PC 20 performs ink color separation on the color-converted image generated in S1613 into the number of ink colors used in the MFP 60. Here, separation is performed into four colors: cyan, magenta, yellow, and black. The detailed processing content of the ink color separation is the same as the ink color separation processing described in S1310 of FIG. 13.

[0122] In S1615, the PC 20 embeds the acquired text ID information in the ink color separated image generated in S1614 to generate a multiplexed image. The multiplexing process is performed on the Y plane of the ink color separated image.

[0123] The description of S1616 to S1617 will be omitted as it is the same as S1312 to S1313 in Fig. 13. When printing is completed, the PC 20 ends this flow.

[0124] The above is a description of the flow explaining the process of changing the density of the image to be embedded depending on the printing method. According to this embodiment, by adjusting the density of the dark area to be lighter during embedding, it is possible to suppress light source reflection during reading and reduce image quality degradation. Furthermore, by adjusting the density of the dark area to be lighter, bleeding is reduced, patterns are maintained, and extraction accuracy is maintained. Furthermore, by adjusting the density of the dark area depending on the printing method, it is possible to maintain a balance between the robustness of reading performance and image quality for each printing method.

[0125] <<Other embodiments>> The above-described embodiments may be combined as appropriate. For example, when printing is performed using an electrophotographic MFP 60, after changing the density of the dark areas of the print document in step S1612 of Fig. 16, masking is performed with a strength suitable for electrophotography, as in step S1410 of Fig. 14. This makes it possible to suppress light source reflection during scanning and make the multiplexing pattern less noticeable.

[0126] In the above-described embodiment, a rendered image based on a PDL was used as the image data into which the embedded information used for printing is embedded, but this is not limited to this. For example, the embedded information may be embedded in RGB image data acquired from an external device by the PC 20 via USB, IEEE 1394, LAN, etc. Also, as described above, the embedded information is not limited to a form that guarantees authenticity, and may be embedded in a form that makes it difficult for the user to see the specified information on the paper.

[0127] Furthermore, in the above embodiment, the inkjet method and the electrophotographic method are cited as printing methods, but the present invention is also applicable to combinations of other printing methods.

[0128] Furthermore, the B plane in the inkjet method and the Y plane in the electrophotographic method have been described as the multiplexing target plane for multiplexed printing with Y ink. However, in actual products, due to the influence of color correction and other image processing, a small amount of ink other than Y ink, such as C or M, may also be printed. The present invention is applicable even in such cases where a small amount of other color ink is generated.

[0129] Furthermore, although the input document has been described using RGB image data and PDL data as examples, the present invention is also applicable to other input document formats.

[0130] Furthermore, although the processes in the above-described embodiment are mainly executed by the PC 20, this is not limiting, and for example, all processes from multiplexing to printing may be executed by the printing device.

[0131] The present invention can also be realized by supplying a program that realizes one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program. It can also be realized by a circuit (e.g., ASIC) that realizes one or more functions.

Claims

1. An image processing device that generates a print document in which specific information is embedded, a first acquisition means for acquiring image data to be used for printing; A second acquisition means for acquiring the specific information; an accepting unit for accepting a designation of a printing device that will execute printing; an embedding condition determination means for determining conditions for embedding the specific information in the image data according to the type of the printing device that has been received; a multiplexed image generating means for generating a multiplexed image by embedding the specific information under the conditions determined by the embedding condition determining means; a control means for controlling the printing device to print the multiplexed image; Equipped with The image processing device according to claim 1, wherein the embedding condition determining means executes embedding in a plane corresponding to the type of the printing device.

2. 2. The image processing apparatus according to claim 1, wherein the type of the printing apparatus includes an inkjet type or an electrophotographic type.

3. 2. The image processing device according to claim 1, wherein the embedding condition determination means, when the type of the printing device is an inkjet type, sets the plane on which embedding is performed to a plane of the color space before conversion to a color plane of the color material used in printing by the printing device.

4. 4. The image processing device according to claim 1, wherein the embedding condition determination means, when the type of the printing device is an inkjet type, executes embedding so that the embedding strength of the B plane of the RGB color space is greater than that of the other planes.

5. 5. The image processing apparatus according to claim 4, wherein the embedding condition determining means determines the plane for executing embedding as a B plane in an RGB color space when the printing apparatus is of an inkjet type.

6. 2. The image processing device according to claim 1, wherein the embedding condition determination means, when the type of the printing device is an electrophotographic type, determines the plane on which embedding is performed as a color plane of a color material used in printing by the printing device.

7. 7. The image processing device according to claim 6, wherein the embedding condition determination means, when the type of the printing device is an electrophotographic type, performs embedding so that the Y plane of the C, M, Y, or K color planes has a greater embedding strength than the other planes.

8. 8. The image processing device according to claim 7, wherein the embedding condition determination means determines the color plane for embedding to be a Y plane among C, M, Y, or K when the type of the printing device is an electrophotographic system.

9. 9. The image processing apparatus according to claim 1, wherein the embedding condition determining unit embeds the specific information with an embedding strength according to the type of the printing apparatus.

10. 10. The image processing device according to claim 9, wherein the embedding condition determining unit embeds the specific information more strongly in the image data when the printing device is of an inkjet type than when the printing device is of an electrophotographic type.

11. An image processing device for generating a print manuscript in which specific information is embedded, a first acquisition means for acquiring image data to be used for printing; A second acquisition means for acquiring the specific information; an accepting unit for accepting a designation of a printing device that will execute printing; an embedding condition determination means for determining conditions for embedding the specific information in the image data according to the type of the printing device that has been received; a multiplexed image generating means for generating a multiplexed image by embedding the specific information under the conditions determined by the embedding condition determining means; a control means for controlling the printing device to print the multiplexed image; Equipped with The image processing apparatus is characterized in that the embedding condition determining means performs density conversion in accordance with the type of the printing apparatus for a portion of the print document that is darker than a predetermined density.

12. 12. The image processing device according to claim 11, wherein the embedding condition determination means performs density conversion on the image data when printing is performed by an inkjet printing device so that the density is higher than when printing by an electrophotographic printing device.

13. 13. The image processing apparatus according to claim 1, wherein the image data is RGB image data or image data rendered based on PDL (Page Description Language).

14. 14. The image processing apparatus according to claim 1, wherein the specific information is information indicating that the print document is authentic.

15. A control method for an image processing apparatus that generates a print document in which specific information is embedded, comprising: a first acquisition step of acquiring image data to be used for printing; a second acquisition step of acquiring the specific information; a receiving step of receiving a designation of a printing device that will execute printing; an embedding condition determination step of determining conditions for embedding the specific information in the image data according to the type of the printing device that has been received; a multiplexed image generating step of performing embedding under the conditions determined in the embedding condition determining step to generate a multiplexed image; a control step of controlling the printing device to print the multiplexed image; Equipped with The control method for an image processing apparatus, wherein the embedding condition determination step executes embedding in a plane according to the type of the printing apparatus.

Citation Information

Patent Citations

  • Method and device for signal processing, addition and detection method for watermark and recording medium

    JP2000299779A

  • Electronic watermark parameter setting device, electronic watermark parameter setting method and electronic watermark parameter setting program

    JP2005026848A

  • Image forming apparatus

    JP2008268526A