Image processing system, image processing method, program, and storage media

By obtaining the color information of the QR code area in the image and determining the foreground and background color of the QR code, the problems of reduced aesthetics and poor readability of the image when printing QR codes in the prior art are solved, and the effect of high readability and good integration is achieved.

JP2025068373APending Publication Date: 2025-04-28CANON KK
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2023178225
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-10-16
Publication Date
2025-04-28

AI Technical Summary

Technical Problem

The prior art when printing QR codes, it is easy to lead to a decrease in the aesthetics of the image and the readability of the QR codes is not good, especially when printing at the center of the image.

Method used

By obtaining the color information of the area where the QR code is located and its surrounding areas in the image, the foreground and background colors of the QR code are determined to improve the readability of the QR code and the degree of fusion with the image.

Benefits of technology

It realizes the high readability of QR codes and good integration with images, avoiding the negative impact of QR codes on image aesthetics when printing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025068373000001_ABST
    Figure 2025068373000001_ABST
Patent Text Reader

Abstract

To provide a technique that enables the creation of a two-dimensional code that is highly readable and comfortable for an image.SOLUTION: An image processing system according to the present invention is characterized in that it has acquisition means for acquiring color information of at least one of the area in the image in which a two-dimensional code is placed and the surrounding area and drawing means for drawing the two-dimensional code on the image, where the drawing means determines the respective colors of the foreground and background of the two-dimensional code based on the color information.SELECTED DRAWING: Figure 6
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to an image processing device, an image processing method, a program, and a storage medium. [Background technology]

[0002] In recent years, with the advancement of digitalization of photographs, information such as the date of photography, the model name of the photographing device, and the GPS data of the photographing location can be recorded together with the photographic data. Furthermore, a two-dimensional code (a geometric pattern such as a QR code (registered trademark) or a barcode) containing information such as the photographing date and time, the website address, and the photographing location can be easily printed together with the photographic image even with a home printer. When printing the two-dimensional code together with the photographic image, for example, in order to fit the photographic image and the two-dimensional code into the printable area, the photographic image is made small and the two-dimensional code is printed outside the photographic image, or the two-dimensional code is printed in a partial area of ​​the photographic image. When using a printer with a small printable area (for example, a printer with a printable area of ​​about 2 to 3 inches on one side), the latter method of printing the two-dimensional code in a partial area of ​​the photographic image is often adopted.

[0003] In general, two-dimensional codes are created using two colors with a large difference in luminance, such as white and black, in consideration of readability. In the method of printing a two-dimensional code in a partial area of ​​a photographic image, a partial area of ​​the photographic image is generally left blank, and black code information is synthesized in the blank area. Therefore, when a two-dimensional code is printed in a partial area of ​​a photographic image, the two-dimensional code stands out very much, which may cause discomfort or significantly impair the beauty and artistic quality of the photographic image.

[0004] Patent Document 1 discloses a method for embedding a barcode in an image area that satisfies certain conditions. Patent Document 2 discloses a method for adjusting the transmittance of a part of a two-dimensional code to make the background color transparent, and adjusting the color of the other area to the same color as the background color. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] JP 2008-33625 A [Patent Document 2] JP 2015-127891 A Summary of the Invention [Problem to be solved by the invention]

[0006] However, in the method disclosed in Patent Document 1, depending on the image, the barcode may be placed at a position far removed from the user's intention, causing a sense of incongruity. For example, although users often prefer the two-dimensional code to be placed at the edge of the image, the two-dimensional code may be placed at the center of the image.

[0007] In the method disclosed in Patent Document 2, when the image region that is the background of the 2D code has large gradation steps and high density of gradation steps, the contrast ratio of the 2D code decreases, and the readability of the 2D code deteriorates. The contrast ratio of a 2D code is the contrast ratio between the foreground and background of the 2D code, and in the method disclosed in Patent Document 2, it is the contrast ratio between the region where the transmittance is adjusted and the region where it is not adjusted.

[0008] An object of the present invention is to provide a technique capable of obtaining a two-dimensional code that is highly readable and blends well with an image. [Means for solving the problem]

[0009] The image processing device of the present invention has an acquisition means for acquiring color information of at least one of the area in an image in which a two-dimensional code is to be placed and the surrounding area, and a drawing means for drawing the two-dimensional code on the image, and is characterized in that the drawing means determines the respective colors of the foreground and background of the two-dimensional code based on the color information. Effect of the Invention

[0010] According to the present invention, it is possible to obtain a two-dimensional code that is highly readable and blends well with an image. [Brief description of the drawings]

[0011] [Figure 1] FIG. 2 is an external view of a printer and a mobile terminal. [Diagram 2] FIG. 1 is a block diagram of a printing system. [Diagram 3] FIG. [Figure 4A] FIG. [Figure 4B] FIG. [Figure 4C] FIG. [Figure 4D] FIG. [Figure 4E] FIG. [Diagram 5] 4 is a flowchart of a printing operation. [Figure 6] 4 is a flowchart of a print application operation according to the first embodiment. [Figure 7] FIG. 2 is a diagram showing an original image, a placement area of ​​a two-dimensional code, and a composite image. [Figure 8] FIG. 1 is a diagram showing a two-dimensional code. [Figure 9] FIG. 2 is a diagram showing an original image, a placement area of ​​a two-dimensional code, and a composite image. [Figure 10] FIG. 13 is a diagram showing an operation procedure for determining the layout area and color of a two-dimensional code. [Figure 11] 10 is a flowchart of a print application operation according to the second embodiment. [Figure 12] 13 is a flowchart of a print application operation according to the third embodiment. [Figure 13] 13 is a flowchart of a print application operation according to the fourth embodiment. [Figure 14] FIG. 13 is a diagram showing a composite image and an overcoat. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0012] First Embodiment A first embodiment of the present invention will be described in detail below with reference to the drawings. In the following description, "printing" refers to the entire series of processes and operations from printing based on a print instruction from a user to paper ejection. Also, "printing" refers to the process and operation of forming an image on a recording paper by thermally transferring a transfer material (ink or overcoat) applied to an ink sheet to the recording paper.

[0013] 1A and 1B are external views of a printer 100 according to the first embodiment, and Fig. 1C is an external view of a mobile terminal 400 according to the first embodiment. Fig. 1A is a perspective view of the printer 100 as viewed from the top side, and Fig. 1B is a perspective view of the printer 100 as viewed from the bottom side.

[0014] As shown in FIG. 1A, the printer 100 is covered by an upper body case 101-1 and a lower body case 101-2, which are upper and lower exteriors. On one side (one end) of the printer 100, a paper discharge port 101-3 (opening) is formed as a gap between the upper body case 101-1 and the lower body case 101-2. During printing, the recording paper 113 temporarily protrudes from the paper discharge port 101-3 to the outside of the printer 100, and the recording paper 113 after printing is completed is discharged from the paper discharge port 101-3. The recording paper 113 is not shown in FIGS. 1A and 1B. The display unit 102 is equipped with LEDs inside, and a plurality of LEDs are projected from a window on the surface. The printer 100 displays several colors of light and blinking. The light and blinking can display status information such as the power state of the printer 100, printing operation, and errors. The power switch 103 is an operation button provided adjacent to the display unit 102. Pressing the power switch 103 can switch the power of the printer 100 between ON and OFF. In addition, a cassette cover 101-4 that is supported so as to be openable and closable is provided on another side of the printer 100, and a cassette mounting section 110-1 that is an opening is provided on the chassis 110 inside the cassette cover 101-4. The ink ribbon cassette 300 can be mounted inside the cassette mounting section 110-1 in the direction of the arrow 304. The ink ribbon cassette 300 stores an ink ribbon 114 coated with sublimation ink. A USB connector 104 that is an external interface is provided on the same surface as the mounting surface of the ink ribbon cassette 300. A tray cover 101-5 is provided on the bottom surface of the printer 100. By opening the tray cover 101-5, recording paper 113 for printing can be placed in the printer 100.

[0015] 2 is a block diagram of the printing system according to the first embodiment. A mobile terminal 400 and a printer 100 communicate with each other wirelessly and control each other. The basic operation is that the mobile terminal 400 transmits image data to be printed and a print command, and the printer 100 prints a photo according to the received data and command.

[0016] First, the internal configuration of the printer 100 will be described. The CPU 201 controls the system of the printer 100 and performs calculation processing. The Flash ROM 202 stores a program for controlling the system of the printer 100. The CPU 201 reads the program from the Flash ROM 202 and controls each part based on the read program. The SDRAM 203 temporarily stores image data. The SDRAM 203 is used for data processing. The part consisting of the CPU 201, the Flash ROM 202, and the SDRAM 203 is called a main control part 204 that mainly processes each control of the printer 100. The functions and processing of the printer 100 described later are realized by the CPU 201 reading the program stored in the Flash ROM 202 and executing this program.

[0017] The image processing unit 205 performs image processing on the image data sent from the mobile terminal 400. The image processing unit 205 performs various image processing such as decompression processing on compressed image data, resizing processing according to the paper used, image correction processing, etc., and generates print data for printing based on the image data that has been subjected to image processing. Note that the processing of the image processing unit 205 may be performed by the main control unit 204 instead of the image processing unit 205, or may be performed by both the image processing unit 205 and the main control unit 204.

[0018] The thermal head control unit 206 converts the print data generated by the image processing unit 205 into an electrical signal and outputs it to the thermal head 207. The thermal head 207 converts the electrical signal into thermal energy to transfer the dye of the ink ribbon onto the paper.

[0019] A head temperature sensor 208 measures the temperature of the thermal head 207. An environmental temperature sensor 209 measures the environmental temperature inside the printer 100. A head position sensor 210 detects the head's pressing position, retracted position, etc. A paper detection sensor 211 detects the paper position. An ink ribbon detection sensor 212 detects information about the ink ribbon. A marker detection sensor 213 detects markers provided on the ink ribbon.

[0020] The motor driver unit 214 controls the motor. The head position drive motor 215 is a motor for driving the head to a pressing position for printing and to a retreat position for replacing the ink ribbon cassette and transporting the paper. The paper transport motor 216 is a motor for transporting the paper. The main control unit 204 issues commands to a motor driver unit 214 in accordance with the sensor information from each of the above sensors and preprogrammed information, and controls the driving of a head position driving motor 215 and a paper transport motor 216.

[0021] Wireless communication unit 217 controls wireless communication with mobile terminal 400. Operation unit 218 receives operation instruction information from power switch 103 provided on the surface of upper main body case 101-1, etc. USB control unit 219 judges information from an external device connected to USB connector 104, which is an external interface, and controls communication, controls power transfer, and controls transmission of various data such as operation information and image data. By connecting an external power adapter to USB connector 104 using a USB cable, it is possible to receive power from the outside.

[0022] The display control unit 220 controls output such as lighting and blinking of the LED of the display unit 102. The battery control unit 221 includes a charging circuit that controls charging of the battery 222. The battery remaining capacity detection unit 223 detects the remaining capacity of the battery 222.

[0023] Next, a description will be given of the internal configuration of the mobile terminal 400. Although a smartphone is assumed as the mobile terminal 400, it may be any other device, such as a digital camera, a digital game machine, or a notebook PC, as long as it has a wireless communication function.

[0024] The CPU 401 performs system control and arithmetic processing of the mobile terminal 400. The Flash ROM 402 stores a system control program. The Flash ROM 402 is a non-volatile storage medium that stores the control program of the mobile terminal 400 and various data such as photos and electronic documents. The SDRAM 403 is used as a temporary storage area such as a main memory and a work area of ​​the CPU 401. A portion consisting of the CPU 401, the Flash ROM 402, and the SDRAM 403 is called a main control unit 404 that mainly processes each control of the mobile terminal 400. In the first embodiment, one CPU 401 executes each process shown in the flowchart described later, but other modes may be used. For example, it is also possible to configure multiple CPUs to cooperate with each other to execute each process shown in the flowchart described later. In addition, a part of the process of the flowchart described later may be executed using a hardware circuit such as an ASIC.

[0025] The CPU 401 reads a program from the Flash ROM 402 and controls each part based on the read program. For example, the CPU 401 reads a program of basic software called an OS to control the operation of the mobile terminal 400. Various applications including a print application can be installed in the mobile terminal, and the CPU 401 can also read the program of the installed application to control the operation of the mobile terminal 400. The OS controls the operation of the mobile terminal 400 according to instructions received from each application and user operation instructions input via the operation panel 405. The print application is an application that provides a print function to the user. The print application instructs the OS to generate a print job, transmit the generated print job, and the like. Various applications other than the print application are installed in the mobile terminal 400, but the description of the other applications is omitted.

[0026] The operation panel 405 has a touch panel function capable of detecting a user's touch operation, and displays various screens. The user can input desired instructions to the mobile terminal 400 by performing a touch operation on the operation panel 405. The mobile terminal 400 is also provided with a hardware key (not shown), and the user can input operation instructions to the mobile terminal 400 using the hardware key.

[0027] The camera 406 takes pictures in response to a user's instruction to take a picture. Pictures taken by the camera 406 are stored in a predetermined area of ​​the Flash ROM 402. The microphone 407 inputs audio, and the speaker 408 outputs audio. The microphone 407 and speaker 408 are mainly used when the user makes a call with another mobile terminal or a landline phone. The wireless communication unit 409 controls wireless communication with the printer 100.

[0028] Next, the configuration of the ink ribbon 114 will be described with reference to FIG. 3. FIG. 3 is a development view of the ink ribbon 114. In the case of full-color printing, it is common to use an ink ribbon in which dye-coated surfaces of the colors yellow (Y), magenta (M), and cyan (C) are arranged as the ink ribbon 114, and to form a full-color image by printing each color on a printing medium in a superimposed manner. Next, a colorless and transparent overcoat (OC) surface is provided. Between each color and the OC surface, a black stripe-shaped marker 114-1 is provided to detect the leading position of each surface. Two markers 114-1Y (markers 114-1Y to distinguish the yellow (Y) surface from other surfaces) are provided to indicate the leading position of the yellow (Y) surface. One marker 114-1M to indicate the leading position of the magenta (M) surface, one marker 114-1C to indicate the leading position of the cyan (C) surface, and one marker 114-1OC to indicate the leading position of the OC surface are provided. It is assumed that the ink ribbon 114 is a dye-sublimation ink ribbon. A highly heat-resistant film such as a polyethylene terephthalate film having a thickness of about 2 to 10 microns is used as the substrate. A sublimation ink made by mixing a dye with a binder, a plasticizer, a binder, etc. is applied to a thickness of about 0.2 to 5 μm on this film to form a dye-coated surface of each color of yellow (Y), magenta (M), and cyan (C). A colorless and transparent overcoat surface is formed by applying a styrene derivative, a styrene resin, a styrene copolymer resin, a binder, etc. to a thickness of about 0.5 to 5 μm on this film. In addition, a lubricant for reducing frictional resistance with the sliding part and stabilizing the running of the ink ribbon, and an abrasive for polishing and cleaning the thermal head surface are applied to the surface opposite to the surface to which the ink is applied.

[0029] Next, the printing operation of printer 100 will be described with reference to Figures 4A to 4E and 5. Figures 4A to 4E are cross-sectional views showing the operation of printer 100, and Figure 5 is a flowchart of the printing operation of printer 100. Figure 4A shows a print standby state, Figure 4B shows a paper feeding state, Figure 4C shows a printing operation state, Figure 4D shows a state after printing has been completed and before paper ejection, and Figure 4E shows a state after paper ejection.

[0030] When the user sets the ink ribbon cassette 300 in the printer 100, loads the recording paper 113 in the paper storage section 117, and presses the power switch 103, the printer 100 goes into standby mode. The printer 100 is equipped with a platen roller 115 and a thermal head 207. The thermal head 207 is rotatably supported on a thermal head rotating shaft 119, and is positioned at a maximum distance from the platen roller 115 so as not to interfere with the ink ribbon cassette 300 when the ink ribbon cassette 300 is inserted or removed.

[0031] Next, when image data to be printed is designated on the mobile terminal 400 and a print instruction is given, the printer 100 receives the print instruction information via the wireless communication unit 217. Then, the printer 100 starts a print operation. This operation is realized by the CPU 201 of the printer 100 expanding the program stored in the Flash ROM 202 into the SDRAM 203 and executing it.

[0032] In S501, the CPU 201 controls the driving of the head position driving motor 215 by a power source (not shown). Then, the support part of the thermal head 207 rotates counterclockwise in the figure around the thermal head rotation shaft 119, and moves to the standby position shown in FIG. 4A and the standby position shown in FIG. 4C as shown in FIG. 4B. The roller 114 moves to a position intermediate between the printing position (position where the roller 114 is nipped with the platen roller 115) and the printing position.

[0033] When the movement of the thermal head 207 is completed, the CPU 201 starts the paper feed operation in S502. When the paper feed operation starts, the pressure plate 120 provided in the printer 100 is urged toward the paper feed roller 121 by an urging means (not shown), and pushes up the recording paper 113 stacked in the paper storage section 117 and presses it against the paper feed roller 121. In the standby position shown in FIG. 4A, the paper feed roller 121 is retreated to a position away from the recording paper 113. In the intermediate position shown in FIG. 4B, the paper feed roller 121 is pushed down by a driving force (not shown) to a position where it contacts the recording paper 113. At this time, the paper feed roller 121 rotates counterclockwise in the figure by the transmission of the driving force of the paper transport motor 216 (not shown), and transports the recording paper 113 that is in pressure contact with the paper feed roller 121 toward the print recording section composed of the thermal head 207 and the platen roller 115. The recording paper 113 comes into contact with a separation bank portion 122 provided in the printer 100, and only the topmost sheet of recording paper 113 is conveyed.

[0034] Next, the conveyed recording paper 113 is detected by a paper detection sensor 211, and the presence or absence of a paper feed malfunction is confirmed. If there is no paper feed malfunction, the recording paper 113 continues to be conveyed by the paper feed roller 121, which pushes the rotatably supported switching plate 123 upward to rotate it clockwise in the figure, and proceeds to the left in the figure. Then, the recording paper 113 enters between the conveying roller 124 and the conveying driven roller 125. The conveying roller 124 is formed with a plurality of minute protrusions that pierce the back surface of the recording paper 113, making it possible to convey the recording paper 113 accurately. The conveying roller 124 is driven by a paper conveying motor 216 (not shown). The paper conveying motor 216 is a stepping motor, and makes it possible to control the feed amount accurately.

[0035] After the recording paper 113 is transported between the nip between the transport roller 124 and the transport driven roller 125, the paper feed roller 121 moves to a standby position shown in Fig. 4A by a power source (not shown). This is to prevent other papers in the paper storage section 117 from being mistakenly transported by the paper feed roller 121. The transport roller 124 and the transport driven roller 125 continue to transport the recording paper 113, and the rear end of the recording paper 113 passes the paper detection sensor 211, is transported a predetermined amount, and after passing the leading end of the switching plate 123, the transport is stopped. Next, in S503, the CPU 201 transports the recording paper 113 in the reverse direction and stops it at the print start position shown in Fig. 4C. At this time, the rear end of the recording paper 113 passes above the switching plate 123, passes below the paper feed roller 121, and is transported into the space between the guide wall 127 that separates and holds the lower part of the battery 222, and the paper storage section wall 128.

[0036] When the paper feed operation is completed and the recording paper 113 stops at the print start position, the CPU 201 performs a cueing operation for the ink ribbon 114 in S504.

[0037] The operation of positioning the ink ribbon 114 will be described below. When the paper is transported to the position shown in FIG. 4C and the transport to the print start position is completed, the ink ribbon 114 stored in the ink ribbon cassette 300 is wound up. That is, the tip of the winding shaft 301 arranged in the ink ribbon cassette 300 engages with an engagement portion provided in the printer 100, and the ink ribbon 114 wound around the supply shaft 302 is wound around the winding shaft 301. As shown in FIG. 2, a marker is provided at the head of each color of the ink ribbon 114. Two markers are provided at the head of yellow (Y), and one marker is provided at the head of magenta (M), cyan (C), and overcoat (OC). The printer 100 is equipped with a marker detection sensor 213, which is a reflective optical sensor, and when it detects a marker on the ink ribbon 114 (when the reflected light is blocked by the marker), it stops transporting the ink ribbon and performs cueing.

[0038] In S505, CPU 201 determines whether the markers have been detected normally. When cueing yellow (Y), it determines whether two markers have been detected within a specified time, and when cueing magenta (M), cyan (C), or overcoat (OC), it determines whether one marker has been detected within a specified time. If the markers have been detected normally (a specified number of markers have been detected within a specified time), the process proceeds to S508, and if not, the process proceeds to S506.

[0039] In S506, the CPU 201 displays on the display unit 102 a blinking light indicating an abnormality (error) in the ink ribbon cassette 300. In S507, the CPU 201 notifies the mobile terminal 400 through the wireless communication unit 217 that an abnormality has occurred in the ink ribbon.

[0040] When the alignment is completed, in S508, the CPU 201 rotates the unit that holds the thermal head 207 counterclockwise in the figure about the thermal head rotation shaft 119. As a result, the thermal head 207 moves to a printing position where the ink ribbon 114 and the recording paper 113 are sandwiched between the platen roller 115 and the thermal head 207.

[0041] When the thermal head 207 moves to the printing position, the CPU 201 determines the type of printing in S509. Yellow (Y), magenta (M), or cyan (C) is started, and if printing in that color is to be performed, the process proceeds to S510, otherwise the process proceeds to S513.

[0042] In S510, the CPU 201 prints the color for which the cue has been set. As shown in FIG. 4D, the recording paper 113 and the ink ribbon 114 are conveyed toward the paper discharge port 101-3 while being pressed and held between the thermal head 207 and the platen roller 115, and are heated by the thermal head 207. Then, the ink applied to the ink ribbon 114 is transferred to the recording paper 113, and printing is performed. The ink ribbon conveying mechanism provided in the printer 100 incorporates a torque limiter mechanism (not shown) that slips when a load of a certain torque or more is applied, and during the printing operation, the ink ribbon 114 and the recording paper 113 are conveyed at the same speed. When printing is performed by heating with the thermal head 207, the ink ribbon 114 and the recording paper 113 are conveyed while maintaining a contact state for a certain distance, and then conveyed in a direction away from each other. That is, the recording paper 113 is transported leftward in the figure by the transport roller 124, and the ink ribbon 114 is transported toward a guide shaft 303 disposed in an ink ribbon cassette 300 while sliding against a peeling plate 129 disposed integrally with the thermal head 207. The ink ribbon 114 is heated by the thermal head 207 and adheres to the recording paper 113, but when it is transported to the position of the peeling plate 129, it is peeled off from the recording paper 113.

[0043] When printing of the cue-aligned color is completed, in S511, the CPU 201 rotates the unit that holds the thermal head 207 by a power source (not shown) and moves it away from the recording paper 113 to the intermediate position shown in Fig. 4B. Then, in S512, the CPU 201 conveys the recording paper 113 in the reverse direction and stops it at the printing start position shown in Fig. 4C.

[0044] When printing of yellow (Y), magenta (M), and cyan (C) is completed, the CPU 201 prints the overcoat (OC) in S513. As described above, in printing of yellow (Y), magenta (M), and cyan (C), ink dyes are transferred. In the overcoat process (printing of the overcoat), the resin described above is melt-transferred to form an overcoat layer. By transferring the overcoat layer, it is possible to impart a uniform gloss to the entire surface of the recording paper 113. In addition, by changing the amount of transfer of the coating resin for forming the overcoat layer by the thermal head 207, it is also possible to record information on the overcoat layer. More specifically, by controlling the output (amount of heat) of the thermal head 207 and inputting energy higher than normal in some areas, it is possible to roughen the surface of the protective layer of the coating resin and form low-gloss areas. The gloss of the surface of the recording paper 113 can be partially reduced. By changing the color of the ink, it is possible to change the impression (texture) of the printed matter. Information can also be recorded by changing the gloss (surface treatment).

[0045] When printing of the overcoat is completed, in S514, the CPU 201 rotates the unit that holds the thermal head 207 using a power source (not shown), and moves it away from the recording paper 113 to the standby position shown in FIG. 4E. Then, in S515, the CPU 201 further transports the recording paper 113 in the direction in which it is discharged from the paper discharge port 101-3. Paper discharge is complete when the rear end of the paper leaves the transport rollers 124. When paper discharge is complete, the printer 100 ends the printing operation. This completes the printing operation in which inks and resins are layered and transferred in the order of yellow, magenta, cyan, and overcoat.

[0046] Next, the operations and methods involved in creating, composing, and printing a two-dimensional color code will be described with reference to Figs. 6 to 10F. Fig. 6 is a flowchart of a print application operation for creating and composing a two-dimensional color code. When a user instructs the mobile terminal 400 to start (execute) a print application, the mobile terminal 400 starts the print application operation. This operation is realized by the CPU 401 of the mobile terminal 400 expanding a print program (a print application program) stored in the Flash ROM 402 into the SDRAM 403 and executing it.

[0047] In S601, the CPU 401 selects and determines an image designated by the user from among images recorded in the Flash ROM 402 as the image to be printed (original image). Figures 7A to 7C are diagrams showing a process of combining a two-dimensional code such as a QR code or a barcode with an original image. Figure 7A shows the original image, Figure 7B shows an area in which the two-dimensional code is placed, and Figure 7C shows the image after the two-dimensional code has been combined. It is assumed that an original image 701 shown in Figure 7A is selected and determined in S601.

[0048] In S602, the CPU 401 acquires and determines the information selected or input by the user as the additional information to be combined with the original image. The additional information includes, for example, link information such as a URL indicating the storage location of data related to the original image (for example, still image data, video data, audio data, etc. stored on a server, etc.). If the original image is a photographic image, the additional information may include GPS location information indicating the location where the photographic image was taken. The additional information is numeric and character information.

[0049] In S603, the CPU 401 encodes (converts) the additional information into a two-dimensional code (image). FIGS. 8A and 8B are diagrams showing the created two-dimensional code. FIG. 8A shows the encoded two-dimensional code, and FIG. 8B shows a two-dimensional code with color settings (color two-dimensional code) described below. The two-dimensional code 803 shown in FIG. 8A is composed of a data cell 803a which is the foreground and a base cell 803b which is the background. The color of the data cell 803a is black, and its pixel value (RGB value (R value, G value, B value)) is (0,0,0). The color of the base cell 803b is white, and its pixel value (RGB value) is (255,255,255). It is assumed that the encoded two-dimensional code is composed of cells of two colors, white and black.

[0050] In S604, CPU 401 determines (sets) the area specified by the user as the area in which to place the two-dimensional code (placement area). For example, CPU 401 displays a user interface screen including original image 701 on operation panel 405. The user specifies a part of original image 701 as the placement area for the two-dimensional code by a user operation such as a touch operation on operation panel 405 (user interface screen). Here, it is assumed that position 701b shown in FIG. 7B is specified, and area 701a at position 701b is specified as the placement area for the two-dimensional code. The user confirms the specified area on the user interface screen. The user can determine the placement area of ​​the two-dimensional code while checking the location of the two-dimensional code. The user may specify an arbitrary position, or may specify the position by selecting one of a plurality of predetermined positions.

[0051] In S605, the CPU 401 acquires color information of the placement area of ​​the two-dimensional code. For example, from the original image, one piece of color information indicating the color of one pixel in the placement area 701a of the two-dimensional code, multiple pieces of color information indicating the colors of multiple pixels, one piece of color information indicating the color of one pixel block, or multiple pieces of color information indicating the colors of multiple pixel blocks are acquired (extracted). One pixel block is made up of multiple pixels. In order to grasp a representative color in the placement area 701a, it is preferable to acquire color information taking multiple pixels into consideration. All pixels in the placement area 701a may be considered, or only some of the pixels may be considered. By reducing the number of pixels to be considered, it is possible to reduce the processing load and the processing time. Here, it is assumed that color information indicating RGB values ​​is acquired.

[0052] In S606, the CPU 401 determines the color of the base cell (background) of the two-dimensional code based on the acquired (extracted) color information. For example, assume that multiple pieces of color information corresponding to multiple parts of the placement area of ​​the two-dimensional code are acquired. In this case, the average color of the multiple parts may be determined as the color of the base cell. The color of the part with the highest luminance or brightness among the multiple parts may be determined as the color of the base cell. The method of determining the color of the base cell is not limited to these, and an arbitrary algorithm that identifies a color representative of the placement area of ​​the two-dimensional code may be used to determine the identified color as the color of the base cell.

[0053] Both luminance and lightness indicate the degree of brightness, with luminance being a value that takes into account differences in brightness due to color, and lightness being the value when saturation is set to 0. The Y value shown in the following formula 1 can be used as the luminance value. The maximum value of the R value, G value, and B value can be used as the lightness value. Y value = 0.2126 x R value + 0.7152 x G value + 0.0722 x B value ...(Formula 1)

[0054] In S607, the CPU 401 determines the color of the data cell (foreground) of the two-dimensional code based on the acquired (extracted) color information. A color obtained by changing the brightness or lightness of the color of the base cell (background) may be determined as the color of the data cell. For example, assume that multiple pieces of color information corresponding to multiple parts of the arrangement area of ​​the two-dimensional code are acquired. In this case, a color obtained by lowering the brightness or lightness of the average color of the multiple parts without changing the hue may be determined as the color of the data cell. The color of the part with the lowest brightness or lightness among the multiple parts may be determined as the color of the data cell.

[0055] The colors of the base cell and the data cell must be determined (set) so as to realize a contrast ratio (contrast ratio between the base cell and the data cell) that allows the two-dimensional code to be read well. In the first embodiment, the colors of the base cell and the data cell are determined by performing the processes of S608 and S609 described below so that the difference between the luminance (or brightness) value of the base cell and the luminance (or brightness) value of the data cell is equal to or greater than a threshold value. The inventors have found through experiments that, regardless of the hue, the two-dimensional code can be read well if the difference between the luminance (or brightness) value of the base cell and the luminance (or brightness) value of the data cell is 50 or more in 256 bits. In the first embodiment, a 256-bit value is used as the luminance (or brightness) value, and 50 is used as the threshold value for the difference between the luminance (or brightness) value of the base cell and the luminance (or brightness) value of the data cell.

[0056] In S608, CPU 401 determines whether the difference between the luminance (or brightness) value corresponding to the color of the base cell determined in S606 and the luminance (or brightness) value corresponding to the color of the data cell determined in S607 is equal to or greater than 50. If the difference is equal to or greater than 50, the process proceeds to S610, and if not, the process proceeds to S609.

[0057] In S609, CPU 401 adjusts the color of at least one of the base cell and the data cell from the color corresponding to the color information (the color determined in S606 and S607) so that the difference between the luminance (or brightness) value of the base cell and the luminance (or brightness) value of the data cell is equal to or greater than 50. Only the color of the base cell may be adjusted, only the color of the data cell may be adjusted, or the colors of both the base cell and the data cell may be adjusted.

[0058] 8B has the colors determined in S606 to S609. The pixel value (RGB values ​​(R value, G value, B value)) of the data cell 804a is (128, 108, 40), and the pixel value (RGB values) of the base cell 804b is (190, 160, 58). The pixel value (190, 160, 58) of the base cell 804b is equal to the average pixel value of the entire arrangement area 701a of the two-dimensional code. The pixel value (128, 108, 40) of the data cell 804a is a pixel value obtained by lowering the Y value from the pixel value (190, 160, 58) of the base cell 804b without changing the hue. The Y value calculated from the pixel values ​​(128, 108, 40) of the data cell 804a is 107.3424, and the Y value calculated from the pixel values ​​(190, 160, 58) of the base cell 804b is 159.0136. Since the difference between them is 51.6712 (≧50), the readability of the two-dimensional code 804 is high.

[0059] In S610, the CPU 401 combines (draws) the two-dimensional code in the color determined in S606 to S609 with the original image. This completes the image data for issuing a print instruction to the printer 100. In the combined image 702 shown in FIG. 7C, a two-dimensional code 804 (color two-dimensional code) is combined with the lower right portion of the original image 701 (placement area 501a of the two-dimensional code). The color of the base cell 804b of the two-dimensional code 804 is equal to the average color of the entire placement area 701a of the two-dimensional code, and is close to the color of the original image 701 (placement area 701a). The hue of the data cell 804a of the two-dimensional code 804 is equal to the hue of the base cell 804b, and is close to the hue of the original image 701 (placement area 701a). Therefore, the two-dimensional code 804 blends in well and naturally in the combined image 702. Furthermore, the difference between the Y value of data cell 804a and the Y value of base cell 804b is 50 or more, so the readability of two-dimensional code 804 is high. This completes the print application operation for creating and compositing a color two-dimensional code. CPU 401 may display the composite image on operation panel 405.

[0060] Next, an example of the case where a different image is used will be described. FIG. 9A shows the original image, FIG. 9B shows the arrangement area of ​​the two-dimensional code, and FIG. 9C shows the image after the two-dimensional code is synthesized. Since the Y value of the arrangement area 701a in FIG. 7B was high, a highly readable two-dimensional code could be obtained by using the average color of the entire arrangement area 701a as the color of the base cell of the two-dimensional code. However, the Y value of the arrangement area 905a of the two-dimensional code set at the position 905b in the original image 905 is low. As shown in FIG. 9B, the pixel values ​​(RGB values ​​(R value, G value, B value)) of the arrangement area 905a are uniform at (69, 41, 18). And the Y value calculated from the pixel values ​​(69, 41, 18) is 45.2922, which is very low (dark). 6, if the average color of the entire placement area 905a is determined as the color of the base cell in S606, and a color darker than that of the base cell is determined as the color of the data cell in S607, the difference between the Y value of the data cell and the Y value of the base cell will be less than 50. As a result, a highly readable 2D code cannot be obtained.

[0061] In such a case, S609 adjusts the color of at least one of the base cells and data cells. For example, a color with a Y value of 50 or more increased from the average color of the entire placement area 905a without changing the hue is redetermined as the color of the base cell. Then, a color with a Y value of 50 or more decreased from the redetermined base cell color without changing the hue is redetermined as the color of the data cell. In the composite image 906 shown in FIG. 9C, a two-dimensional code (color two-dimensional code) is combined in the lower right corner (placement area 905a of the two-dimensional code) of the original image 905. The color of the base cell 906b of the two-dimensional code is brighter than the color of the area 906c (surrounding area) surrounding the placement area 905a of the two-dimensional code, but the hue of the base cell 906b is equal to the hue of the surrounding area 906c. And the hue of the data cell 906a of the two-dimensional code is also equal to the hue of the surrounding area 906c. Therefore, in the composite image 906, the two-dimensional code is slightly brighter than the surrounding area 906c, but blends in well without any sense of incongruity. Furthermore, since the difference between the Y value of the data cell 906a and the Y value of the base cell 906b is 50 or more, the readability of the two-dimensional code 804 is high.

[0062] The method of setting and adjusting the color of the base cell and the color of the data cell is not limited to the above method. For example, if the Y value corresponding to the average color of the arrangement area of ​​the two-dimensional code is less than 50, the average color may be determined as the color of the data cell. Then, a color with a Y value increased by an increment of 50 or more from the color of the data cell without changing the hue may be determined as the color of the base cell. Depending on the Y value corresponding to the average color of the arrangement area of ​​the two-dimensional code, it may be switched between determining the average color as the color of the base cell or the color of the data cell. If the Y value corresponding to the average color of the arrangement area of ​​the two-dimensional code is less than 50, the average color may be determined as the color of the data cell, and if the Y value corresponding to the average color of the arrangement area of ​​the two-dimensional code is 50 or more, the average color may be determined as the color of the base cell.

[0063] Next, a method for a user to specify a placement area of ​​a two-dimensional code and check a composite image (an image in which a two-dimensional code is combined (drawn)) will be described with reference to Figures 10A to 10F. Figures 10A to 10F are diagrams showing an operation procedure for determining the placement area and color of a two-dimensional code.

[0064] Fig. 10A shows a state before the user specifies the placement area of ​​the two-dimensional code. In Fig. 10A, an original image 1001 is displayed on the operation panel 405, and a black and white two-dimensional code 1002 encoding additional information selected or input by the user is displayed outside the original image 1001. The user can move the two-dimensional code 1002 by touching the two-dimensional code 1002 with a finger 1003 and performing a drag operation to move the touch position. In Fig. 10A, four candidates 1001a, 1001b, 1001c, and 1001d for the placement area of ​​the two-dimensional code are identifiable.

[0065] 10B shows the state in which the user has moved the two-dimensional code 1002 to the position of candidate 1001a (the lower right part of the original image 1001) by a drag operation. When the two-dimensional code 1002 moves to the position of candidate 1001a, the two-dimensional code 1002 blinks. This allows the user to easily understand that a two-dimensional code can be placed at, for example, the current position (the position of candidate 1001a).

[0066] 10C shows a state in which the user has moved two-dimensional code 1002 by dragging from the position of candidate 1001a (the lower right part of original image 1001) to the position of candidate 1001b (the lower left part of original image 1001). When two-dimensional code 1002 moves away from the position of candidate 1001a, it stops blinking. Then, when two-dimensional code 1002 moves to the position of candidate 1001b, it begins blinking. This allows the user to easily understand that a two-dimensional code can be placed at, for example, the current position (the position of candidate 1001b).

[0067] FIG. 10D shows the case where the user touches (draws) the position of the candidate 1001b (the lower left corner of the original image 1001). 10D shows a state where the drag operation (drag operation) is completed. When the drag operation is completed at the position of the candidate 1001b, the blinking of the two-dimensional code 1002 stops, and the candidate 1001b is determined as the arrangement area of ​​the two-dimensional code. Then, a color two-dimensional code 1004 having a color determined (set) by the first algorithm is generated, and the two-dimensional code to be displayed is switched from the two-dimensional code 1002 to the color two-dimensional code 1004. In this way, when the arrangement area of ​​the two-dimensional code is determined, a composite image is displayed and the user can confirm the composite image. In the state of FIG. 10D, a composite image corresponding to the first algorithm is displayed, and the user can confirm the composite image corresponding to the first algorithm. In the first algorithm, the average color of the arrangement area of ​​the two-dimensional code is determined as the color of the base cell of the two-dimensional code, and a color obtained by lowering the Y value by 50 or more without changing the hue from the average color is determined as the color of the data cell of the two-dimensional code. The first algorithm is preferably used when the hue of the arrangement area of ​​the two-dimensional code is approximately uniform.

[0068] FIG. 10E shows a state where the color two-dimensional code 1004 in FIG. 10D is double-tapped (two touches in a short time). When the color two-dimensional code 1004 is double-tapped, a color two-dimensional code 1006 having a color determined (set) by the second algorithm is generated. Then, the two-dimensional code to be displayed is switched from the color two-dimensional code 1004 to the color two-dimensional code 1006. In the second algorithm, the color with the highest Y value in the arrangement area of ​​the two-dimensional code is determined as the color of the base cell of the two-dimensional code, and the color with the lowest Y value in the arrangement area is determined as the color of the data cell of the two-dimensional code. The second algorithm is preferably used when the number of colors in the arrangement area of ​​the two-dimensional code is roughly two, and the difference in brightness or luminance between the two colors is large.

[0069] FIG. 10F shows a state where color two-dimensional code 1006 in FIG. 10E is double-tapped. When color two-dimensional code 1006 is double-tapped, color two-dimensional code 1008 having a color determined (set) by the third algorithm is generated. Then, the displayed two-dimensional code is switched from color two-dimensional code 1006 to color two-dimensional code 1008. In the third algorithm, for each of a plurality of portions in the area where the two-dimensional code is placed, the color of each of the base cell and data cell of the two-dimensional code is determined based on color information corresponding to that portion. The third algorithm is preferably used when the colors of the plurality of portions in the area where the two-dimensional code is placed are significantly different.

[0070] For example, in the third algorithm, the area in which the two-dimensional code is placed is divided into an upper half area (upper area) and a lower half area (lower area). The average color of the lower area is then determined as the color of the base cell in the lower area, and a color obtained by lowering the Y value of the average color by 50 or more without changing the hue is determined as the color of the data cell in the lower area. Similarly, the average color of the upper area is determined as the color of the base cell in the upper area, and a color obtained by lowering the Y value of the average color by 50 or more without changing the hue is determined as the color of the data cell in the upper area. Even if the combination of the base cell color and the data cell color differs between multiple areas, as long as the contrast ratio between the base cell and the data cell in each area is sufficiently high, the two-dimensional code can be read well.

[0071] In this way, the algorithm for determining the colors of the base cell and the data cell of the two-dimensional code based on the color information may be switchable between multiple algorithms. This makes it possible to obtain a composite image in which a more suitable two-dimensional code is arranged (for example, a composite image in which the two-dimensional code is more natural). Also, multiple composite images in which two-dimensional codes are drawn using multiple algorithms may be displayed for comparison. This allows the user to easily select a composite image that best suits his or her preferences.

[0072] The number of algorithms may be more or less than three. The algorithm may be automatically determined according to the original image, etc., instead of the user selecting the algorithm. A calculator obtained by machine learning may be used for the determination. Instead of switching between multiple composite images with different algorithms, multiple composite images may be displayed side by side.

[0073] As described above, according to the first embodiment, color information of the area in the original image where the two-dimensional code is to be placed is acquired, and the colors of the foreground and background of the two-dimensional code are determined based on the color information. In this way, a two-dimensional code that is highly readable and blends well with the image can be obtained.

[0074] Although an example has been shown in which the mobile terminal 400 generates and synthesizes the two-dimensional code, these processes may also be performed by the printer 100. The image processing device to which the present invention is applied may be a printer, or may be a device separate from the printer. The colors of the foreground and background of the two-dimensional code may also be interchanged. The color of one of the foreground and background of the two-dimensional code may be determined based on the color of the other of the foreground and background of the two-dimensional code, or may be determined independently.

[0075] <Second embodiment> The second embodiment of the present invention will be described below with reference to FIG. 11. In the following, the same points as in the first embodiment (for example, the same configuration and processing as in the first embodiment) will not be described as necessary. FIG. 11 is a flowchart of the print application operation according to the second embodiment. S1101 to S1104 are the same as S601 to S604 in the first embodiment (FIG. 6), and S1106 to S1110 are the same as S606 to S610 in the first embodiment (FIG. 6). In S605 in the first embodiment (FIG. 6), the CPU 401 acquires color information of the arrangement area of ​​the two-dimensional code. In S1105, the CPU 401 acquires color information of the area (surrounding area) surrounding the arrangement area of ​​the two-dimensional code. By using the color information acquired in this way, a color two-dimensional code whose color blends well with the color of the surrounding area can be obtained, and a composite image without a sense of incongruity can be obtained.

[0076] <Third embodiment> The third embodiment of the present invention will be described below with reference to FIG. 12. In the following, the same points as in the first embodiment (for example, the same configuration and processing as in the first embodiment) will be omitted as appropriate. FIG. 12 is a flowchart of the print application operation according to the third embodiment. S1201 to S1204 are the same as S601 to S604 in the first embodiment (FIG. 6), and S1206 to S1210 are the same as S606 to S610 in the first embodiment (FIG. 6). In S605 in the first embodiment (FIG. 6), the CPU 401 obtained color information of the arrangement area of ​​the two-dimensional code. In S1105 in the second embodiment (FIG. 11), the CPU 401 obtained color information of the area surrounding the arrangement area of ​​the two-dimensional code (surrounding area). In S1205, the CPU 401 obtains color information of the area including the arrangement area of ​​the two-dimensional code and its surrounding area. By using the color information obtained in this manner, a two-dimensional color code can be obtained that blends in well with the colors of the surrounding areas and is suitable for the color of the placement area, resulting in a more natural composite image.

[0077] As in the first to third embodiments, the area from which color information is acquired can be changed as appropriate, and a composite image that matches the user's preferences can be obtained by appropriately setting the area from which color information is acquired. The area from which color information is acquired may be a fixed area determined in advance, or may be an area designated by the user. In addition, the area from which color information is acquired may be automatically determined according to the original image, etc. A calculator obtained by machine learning may be used for the determination.

[0078] <Fourth embodiment> A fourth embodiment of the present invention will be described below with reference to Figs. 13 and 14. In the fourth embodiment, the color of the two-dimensional code is determined by the method of the first embodiment, and parameters of the coating process (overcoat process) performed during printing are also determined. Note that, in the following, descriptions of the same points as in the first embodiment (for example, the same configuration and process as in the first embodiment) will be omitted as appropriate. Note that the color of the two-dimensional code may be determined by the method of the second embodiment, or may be determined by the method of the third embodiment.

[0079] 13 is a flowchart of the print application operation according to the fourth embodiment. Steps S1301 to S1310 are the same as steps S601 to S610 in the first embodiment (FIG. 6).

[0080] In S1311, CPU 401 generates parameters (OC data of the two-dimensional code) for the overcoat process to be performed on the arrangement area of ​​the two-dimensional code. Here, OC data is generated in which the transfer gradation value of the data cell of the two-dimensional code is a low gloss value and the transfer gradation value of the base cell of the two-dimensional code is a high gloss value. The low gloss transfer gradation value is a value that inputs high energy to the thermal head during the overcoat process, and is assumed to be a large value. In low gloss areas using a large transfer gradation value, the surface is rough and optical scattering occurs. The high gloss transfer gradation value is a value that inputs low energy to the thermal head during the overcoat process, and is assumed to be a small value. In high gloss areas using a small transfer gradation value, the melt-transferred protective layer becomes almost transparent.

[0081] In S1312, CPU 401 combines the OC data of the two-dimensional code with the OC data of the entire image. The OC data of the entire image is, for example, OC data generated according to the original image. The data of the arrangement area of ​​the two-dimensional code included in the OC data of the entire image is overwritten with the OC data of the two-dimensional code. In this way, OC data is generated so that a composite image is printed in which the data cells of the two-dimensional code are low gloss and the base cells of the two-dimensional code are high gloss.

[0082] FIG. 14 is a diagram showing an example of a composite image and an overcoat (OC) according to the fourth embodiment. A color two-dimensional code 1401 is composited (drawn) in a composite image 1400. It is assumed that the composite image 1400 is generated by the same method as in the first embodiment. In the OC 1402, a high gloss transfer gradation value (small transfer gradation value) is set for an area 1403 outside the color two-dimensional code 1401. A high gloss transfer gradation value (small transfer gradation value) is also set for a base cell 1404 of the color two-dimensional code 1401. A low gloss transfer gradation value (large transfer gradation value) is set for a data cell 1405 of the color two-dimensional code 1401.

[0083] If the overcoat process is not performed, the color two-dimensional code 1401 will blend into the composite image 1400 and become inconspicuous, and the user may not be able to recognize the color two-dimensional code 1401. In the fourth embodiment, the data cell 1405 portion may be clearly visible due to optical scattering at the protective layer (rough surface) of the OC 1402, so the user can easily notice the color two-dimensional code 1401. Note that, since the OC 1402 is transparent, the visibility of the composite image 1400 is not significantly reduced by the OC 1402.

[0084] The above-described embodiment (including the modified examples) is merely an example, and the present invention also includes configurations obtained by appropriately modifying or changing the configurations of the above-described embodiment within the scope of the gist of the present invention. The present invention also includes configurations obtained by appropriately combining the configurations of the above-described embodiment.

[0085] <Other embodiments> The present invention can also be realized by a process in which a program for implementing one or more of the functions of the above-described embodiments is supplied to a system or device via a network or a storage medium, and one or more processors in a computer of the system or device read and execute the program. The present invention can also be realized by a circuit (e.g., ASIC) that implements one or more of the functions.

[0086] The disclosure of the present embodiment includes the following configuration, method, program, and medium. (Configuration 1) An acquisition means for acquiring color information of at least one of an area in an image in which a two-dimensional code is to be placed and an area surrounding the area; a drawing means for drawing the two-dimensional code on the image; having The drawing means determines the colors of the foreground and background of the two-dimensional code based on the color information. 13. An image processing device comprising: (Configuration 2) The acquiring means acquires color information of an area in which the two-dimensional code is to be placed. 2. The image processing device according to claim 1, (Configuration 3) The acquiring means acquires color information of an area surrounding an area in which the two-dimensional code is to be placed. 2. The image processing device according to claim 1, (Configuration 4) The acquiring means acquires color information of a region that is a combination of the region in which the two-dimensional code is placed and the surrounding region. 2. The image processing device according to claim 1, (Configuration 5) The drawing means determines the colors of the foreground and the background of the two-dimensional code so that a difference between a luminance or brightness value of the foreground and a luminance or brightness value of the background is equal to or greater than a threshold value. 5. The image processing device according to any one of configurations 1 to 4. (Configuration 6) The drawing means adjusts a color of at least one of the foreground and the background of the two-dimensional code from a color corresponding to the color information so that a difference between a luminance or brightness value of the foreground and a luminance or brightness value of the background becomes equal to or greater than the threshold value. 6. The image processing device according to configuration 5. (Configuration 7) The threshold corresponds to 50 in 256 bits. 7. The image processing device according to configuration 5 or 6. (Configuration 8) The drawing means is capable of switching between a plurality of algorithms for determining the colors of the foreground and the background of the two-dimensional code based on the color information. 8. The image processing device according to any one of configurations 1 to 7. (Configuration 9) A control means for controlling to display an image on which the two-dimensional code is drawn. Further having 9. The image processing device according to any one of configurations 1 to 8. (Configuration 10) A setting means for setting an area in which the two-dimensional code is to be placed in response to a user operation. and When an area in which the two-dimensional code is to be placed is set, the control means Control the mode to display the drawn image 10. The image processing device according to configuration 9. (Configuration 11) the drawing means is capable of switching between a plurality of algorithms for determining the colors of the foreground and the background of the two-dimensional code based on the color information; The control means controls to display a plurality of images on which the two-dimensional code is drawn using each of the plurality of algorithms in a comparative manner. 11. The image processing device according to configuration 9 or 10. (Configuration 12) the acquiring means acquires a plurality of pieces of color information respectively corresponding to a plurality of parts of the image; The drawing means includes: determining an average color of the plurality of portions as one of the foreground and background colors of the two-dimensional code based on the plurality of color information; A color obtained by changing the luminance or brightness of one of the colors of the foreground and the background is determined as the other color of the foreground and the background. 12. The image processing device according to any one of configurations 1 to 11. (Configuration 13) the acquiring means acquires a plurality of pieces of color information respectively corresponding to a plurality of parts of the image; The drawing means includes: determining a color of a portion of the plurality of portions having the highest or lowest luminance or brightness as one of the foreground and background colors of the two-dimensional code based on the plurality of color information; A color obtained by changing the luminance or brightness of one of the colors of the foreground and the background is determined as the other color of the foreground and the background. 12. The image processing device according to any one of configurations 1 to 11. (Configuration 14) the acquiring means acquires a plurality of pieces of color information respectively corresponding to a plurality of parts of an area in which the two-dimensional code is to be arranged, The drawing means determines, for each of the plurality of portions, the color of the foreground and the color of the background of the two-dimensional code based on the color information corresponding to that portion. 12. The image processing device according to any one of configurations 1 to 11. (Configuration 15) A determining means for determining parameters of a coating process performed during printing so that an image is printed in which the foreground of the two-dimensional code has a low gloss and the background of the two-dimensional code has a high gloss. Further having 15. The image processing device according to any one of configurations 1 to 14. (method) an acquisition step of acquiring color information of at least one of an area in the image where the two-dimensional code is to be placed and an area surrounding the area; a drawing step of drawing the two-dimensional code on the image; having In the drawing step, the colors of the foreground and background of the two-dimensional code are determined based on the color information. 13. An image processing method comprising: (program) A program for causing a computer to function as each of the means of the image processing device according to any one of configurations 1 to 15. (medium) A computer is configured to function as each of the means of the image processing device according to any one of configurations 1 to 15. A computer-readable storage medium that stores a program for performing the above-mentioned operations. [Explanation of symbols]

[0087] 400: Mobile terminal 401: CPU

Claims

1. an acquisition means for acquiring color information of at least one of an area in an image in which a two-dimensional code is to be placed and an area surrounding the area; a drawing means for drawing the two-dimensional code on the image; having The drawing means determines the colors of the foreground and background of the two-dimensional code based on the color information.

13. An image processing device comprising:

2. The acquiring means acquires color information of an area in which the two-dimensional code is to be placed.

2. The image processing device according to claim 1,

3. The acquiring means acquires color information of an area surrounding an area in which the two-dimensional code is to be placed.

2. The image processing device according to claim 1,

4. The acquiring means acquires color information of a region that includes the region in which the two-dimensional code is placed and a surrounding region.

2. The image processing device according to claim 1,

5. The drawing means determines the colors of the foreground and the background of the two-dimensional code so that a difference between a luminance or brightness value of the foreground and a luminance or brightness value of the background is equal to or greater than a threshold value.

2. The image processing device according to claim 1,

6. The drawing means adjusts a color of at least one of the foreground and the background of the two-dimensional code from a color corresponding to the color information so that a difference between a luminance or brightness value of the foreground and a luminance or brightness value of the background becomes equal to or greater than the threshold value.

6. The image processing device according to claim 5,

7. The threshold corresponds to 50 in 256 bits.

6. The image processing device according to claim 5,

8. The drawing means is capable of switching between a plurality of algorithms for determining the colors of the foreground and the background of the two-dimensional code based on the color information.

2. The image processing device according to claim 1,

9. A control means for controlling to display an image on which the two-dimensional code is drawn. Further having 2. The image processing device according to claim 1,

10. A setting means for setting an area in which the two-dimensional code is to be placed in response to a user operation. and The control means controls so as to display an image in which the two-dimensional code is drawn when an area in which the two-dimensional code is to be placed is set.

10. The image processing device according to claim 9,

11. The drawing means is capable of switching between a plurality of algorithms for determining the colors of the foreground and the background of the two-dimensional code based on the color information. can be, The control means controls to display a plurality of images on which the two-dimensional code is drawn using each of the plurality of algorithms in a comparative manner.

10. The image processing device according to claim 9,

12. the acquiring means acquires a plurality of pieces of color information corresponding to a plurality of parts of the image, The drawing means includes: determining an average color of the plurality of portions as one of the foreground and background colors of the two-dimensional code based on the plurality of color information; A color obtained by changing the luminance or brightness of one of the colors of the foreground and the background is determined as the other color of the foreground and the background.

2. The image processing device according to claim 1,

13. the acquiring means acquires a plurality of pieces of color information corresponding to a plurality of parts of the image, The drawing means includes: determining a color of a portion of the plurality of portions having the highest or lowest luminance or brightness as one of the foreground and background colors of the two-dimensional code based on the plurality of color information; A color obtained by changing the luminance or brightness of one of the colors of the foreground and the background is determined as the other color of the foreground and the background.

2. The image processing device according to claim 1,

14. the acquiring means acquires a plurality of pieces of color information respectively corresponding to a plurality of parts of an area in which the two-dimensional code is to be arranged, The drawing means determines, for each of the plurality of portions, the color of the foreground and the color of the background of the two-dimensional code based on the color information corresponding to that portion.

2. The image processing device according to claim 1,

15. A determining means for determining parameters of a coating process performed during printing so that an image is printed in which the foreground of the two-dimensional code has a low gloss and the background of the two-dimensional code has a high gloss. Further having 2. The image processing device according to claim 1,

16. an acquisition step of acquiring color information of at least one of an area in the image where the two-dimensional code is to be placed and an area surrounding the area; a drawing step of drawing the two-dimensional code on the image; having In the drawing step, the colors of the foreground and background of the two-dimensional code are determined based on the color information.

13. An image processing method comprising:

17. A program for causing a computer to function as each of the means of the image processing device according to any one of claims 1 to 15.

18. A computer-readable storage medium storing a program for causing a computer to function as each of the means of the image processing device according to any one of claims 1 to 15.

Citation Information

Patent Citations

  • Method and device for embedding bar code in color image, and computer program

    JP2008033625A

  • Article management system, article management method, and article managed by system or method

    JP2015127891A