Information code and code reading procedure
By combining a first and second code with specific cell identifications and adjusting the size or placement of the second code, the information code addresses reading errors associated with intermediate gray cells, enhancing the reliability of code reading.
Patent Information
- Application Number
- DE112023002467
- Authority / Receiving Office
- DE · DE
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-05-15
- Publication Date
- 2025-03-13
AI Technical Summary
Existing information codes struggle with reading errors, particularly when fine cells are used or when only partial illumination is applied, due to the difficulty in identifying intermediate gray cells compared to black and white cells.
The information code is generated by combining a first code and a second code, each with a two-dimensional arrangement of cells. The code includes light-colored, dark-colored, semi-bright, and semi-dark cells, where the semi-bright cell is identified as light-colored in the first code and dark-colored in the second code, and vice versa for the semi-dark cell. The second code is either enlarged relative to the first code or combined in the center, ensuring larger cell sizes and reducing reading errors.
This approach reduces reading errors in information codes containing semi-dark and semi-light cells by ensuring larger cell sizes and minimizing the influence of light on the outer edges, thereby improving the reliability of code reading.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Cross-reference to a related application
[0001] This application is based on Japanese Patent Application No. 2022-087899 filed on May 30, 2022, the disclosure of which is incorporated herein by reference. Technical area
[0002] The present disclosure relates to a technique of an information code that records information. State of the art
[0003] Patent Literature 1 discloses an information code generated by combining a basic QR code (QR code, registered trademark) with another QR code. Such an information code includes not only a black cell and a white cell, but also a light gray cell and a dark gray cell. Information recorded in multiple QR codes can be individually read by arranging the cells in a corresponding two-dimensional manner. State-of-the-art literaturePatent literature
[0004] Patent Literature 1: JP 2021-196762 A Summary
[0005] A gray cell, which is an intermediate color, is difficult to identify compared to black and white cells. Therefore, in a case where individual cells forming an information code are fine, or in a case where light only illuminates part of an information code, it is particularly likely that reading an added code may fail.
[0006] An object of the present disclosure is to provide an information code and a code reading method, each of which enables suppression of reading errors.
[0007] To achieve the above-described object, according to one aspect of the present disclosure, an information code is generated by combining a first code and a second code. In each of the first code and the second code, information is recorded by a plurality of cells arranged in a two-dimensional array.The information code includes: a light-colored cell; a dark-colored cell; a semi-light-colored cell with a color closer to the light-colored cell than to the dark-colored cell, wherein the semi-light-colored cell is identified as the same as the light-colored cell when reading the first code and is identified as the dark-colored cell when reading the second code; and a semi-dark-colored cell with a color closer to the dark-colored cell than to the light-colored cell, wherein the semi-dark-colored cell is identified as the same as the dark-colored cell when reading the first code and is identified as the light-colored cell when reading the second code. The second code is enlarged relative to the first code, and one of the plurality of cells in the second code is combined over two or more of the plurality of cells in the first code.
[0008] According to another aspect of the present disclosure, a code reading method to be executed by at least one processor reads a second code from an information code. The information code is generated by combining a first code with the second code. In each of the first code and the second code, information is recorded by a plurality of cells arranged in a two-dimensional array. The code reading method includes: determining a semi-light-colored cell having a color closer to a light-colored cell than to a dark-colored cell as the dark-colored cell; determining a semi-dark-colored cell having a color closer to the dark-colored cell than to the light-colored cell as the light-colored cell; and reading the second code by identifying two or more cells in the first code as one cell.
[0009] In the above aspects, since the second code is enlarged relative to the first code, a cell size of the second code is larger than a cell size of the first code. Therefore, it is possible to reduce reading errors even for the information code including the half-dark color cell and the half-light color cell.
[0010] According to another aspect of the present disclosure, an information code is generated by combining a first code and a second code. In each of the first code and the second code, information is recorded by a plurality of cells arranged in a two-dimensional array.The information code includes: a light-colored cell; a dark-colored cell; a semi-light-colored cell with a color closer to the light-colored cell than to the dark-colored cell, the semi-light-colored cell being identified as the same as the light-colored cell when reading the first code and as the dark-colored cell when reading the second code; and a semi-dark-colored cell with a color closer to the dark-colored cell than to the light-colored cell, the semi-dark-colored cell being identified as the same as the dark-colored cell when reading the first code and as the light-colored cell when reading the second code. The second code is smaller than the first code and is combined at a center of the first code.
[0011] According to another aspect of the present disclosure, a code reading method to be executed by at least one processor reads a second code from an information code. The information code is generated by combining a first code with the second code. In each of the first code and the second code, information is recorded by a plurality of cells arranged in a two-dimensional array. The code reading method includes: specifying a formation code.Forming area of the second code combined at a center of the first code; determining a semi-light colored cell having a color closer to a light colored cell than to a dark colored cell among the cells in the formation area as the dark colored cell; and determining a semi-dark colored cell having a color closer to the dark colored cell than to the light colored cell among the cells in the formation area as the light colored cell.
[0012] In the above aspects, the second code is smaller than the first code and is combined at a center of the first code. Therefore, the semi-dark cell and the semi-light cell are not formed near an outer edge of the information code. In this way, by avoiding the proximity of the outer edge, which is easily affected by light, it is possible to suppress reading errors even for the information code containing the semi-dark cell and the semi-light cell.
[0013] Please note that the reference numerals in parentheses in the claims merely indicate an example of a corresponding relationship with a specific configuration in the embodiment to be described later and do not limit the technical scope in any way. It is possible to use a combination of the claims that is not explicitly described in the claims as long as there is no problem in the combination. Short description of the characters Fig. 1 shows an information code according to an embodiment of the present disclosure. Fig. Figure 2 shows an overall picture when a traceability system is operated together with an existing distribution management system. Fig. 3 shows details of a combination area in which a confidential code is combined. Fig. Figure 4 shows details of a magnification ratio set for the confidential code. Fig. Fig. 5 is an enlarged view showing an area V in the information code in Fig. 1 is enlarged. Fig. 6 shows a rule for combining a public code and the confidential code. Fig. 7 is a flowchart showing details of code generation processing executed by a history management server. Fig. 8 is a flowchart showing details of code reading processing executed by a code scanner or the like. Fig. 9 shows details of image processing for extracting the confidential code from the information code. Fig. 10 shows an influence of light generated when reading the confidential code. Fig. 11 shows details of a magnification ratio set for a confidential code in a first modification. Fig. 12 shows details of a combination area defined in an information code in a second modification. Fig. 13 shows details of a magnification ratio set for a confidential code in the second modification. Description of embodiments
[0014] One in Fig. The information code CQ2 shown in FIG. 1 according to an embodiment of the present disclosure is generated by combining two two-dimensional codes. Each of the two-dimensional codes serving as the basis of the information code CQ2 is, for example, a QR code (registered trademark) in which information is recorded by a two-dimensional arrangement of a plurality of cells Ce. The information code CQ2 is printed on a paper medium or the like and is used in the form of a code-printed medium such as a label, a sticker, or an identifier. The information code CQ2 can be displayed on a display device such as a display or electronic paper.
[0015] The information code CQ2 in the present embodiment is generated by combining a public code Cd1 and a confidential code Cd2. When the information code CQ2 is read using a normal reader such as a code reader 13 (see Fig. 2), which will be described later, the information code CQ2 is recognized as the public code Cd1. In this case, information recorded in the public code Cd1 (hereinafter referred to as public information) is read. Meanwhile, the confidential code Cd2 is read using a special reading device, such as a code scanner 23 (see Fig. 2), which will be described later. In this case, information recorded in the confidential code Cd2 (hereinafter referred to as confidential information) is read.
[0016] The information code CQ2 is stored in both a distribution management system 110 and a traceability system 120, which are Fig. 2. The distribution management system 110 and the traceability system 120 are management systems that manage a supply chain SC structured to include a large number of transaction parties TR. The supply chain SC is a connection between the transaction parties for delivering an industrial product, an agricultural product, an aquatic product, and the like to an end user. As an example, the transaction parties TR in the supply chain SC for delivering an agricultural product to a consumer include a farmer TR1, an agricultural cooperative TR2, which is a collection facility, a transporter TR3, and a retailer TR4.
[0017] The distribution management system 110 collects a transaction record of a transaction item between the transaction parties TR using the public code Cd1. In other words, the public code Cd1 is a QR code used by the distribution management system 110. The distribution management system 110 includes an input terminal 11, a label printer 12, the code reader 13, and a system server 10. The input terminal 11, the label printer 12, and the code reader 13 are appropriately provided at a facility of each transaction party TR. The input terminal 11, the label printer 12, and the code reader 13 are connected via a network to the system server 10, which is provided at a data center or the like.
[0018] The input terminal 11 is, for example, a personal computer or a tablet terminal. Basic information about the transaction item (hereinafter referred to as item information) delivered to the supply chain SC is input into the input terminal 11 according to a predetermined format. For example, the item information includes an article name, a production location, a production facility, and a manufacturer. The input terminal 11 transmits the item information about the transaction item sent by the transaction party TR to the system server 10.
[0019] The label printer 12 is an output device for printing the public code Cd1 on a paper medium. The label printer 12 is capable of color or grayscale printing. The paper medium on which the public code Cd1 is printed is attached to a package, an outer box, or the like of the transaction item to be shipped and is distributed in a state in which it is attached to the transaction item.
[0020] The code reader 13 is a reading device that acquires the public information recorded in the public code Cd1 by reading the public code Cd1. The code reader 13 acquires the public information recorded in the public code Cd1 and transmits the acquired public information to the system server 10.
[0021] The system server 10 is a host node capable of communicating with the input terminal 11, the label printer 12, and the code reader 13. The system server 10 registers the item information acquired from the input terminal 11 in a database. The system server 10 prepares the public information associated with the item information and generates the public code Cd1 in which the public information is recorded. As processing for outputting the public code Cd1, the system server 10 transmits image data of the generated public code Cd1 to the label printer 12, which is a transmission source of the item information.When the issued public code Cd1 is distributed together with the transaction object and read by the code reader 13 of another transaction party TR, the system server 10 accumulates the transaction record of the transaction object of the transaction party TR.
[0022] The traceability system 120 is used in combination with the distribution management system 110 and accumulates the transaction record in the same manner as in the distribution management system 110. Specifically, the distribution management system 110 corresponds to an old management system, and the traceability system 120 corresponds to a new management system. The traceability system 120 operates together with the existing distribution management system 110 without substantially changing the distribution management system 110. In addition to a record generation function of accumulating the transaction record, the traceability system 120 has a record reference function of providing the accumulated transaction record in a manner that allows reference to it.In the traceability system 120, blockchain technology is used to manage the transaction record for the purpose of preventing manipulation of the transaction record.
[0023] The traceability system 120 collects the transaction record using the information code CQ2 based on the public code Cd1 issued by the system server 10. The traceability system 120 includes a code issuing machine 22, the code scanner 23, and a history management server 20. Furthermore, the traceability system 120 utilizes the input terminal 11 and the label printer 12 of the distribution management system 110. The code issuing machine 22, the code scanner 23, and the input terminal 11 are connected via a network to the history management server 20 provided at a data center or the like.
[0024] The code issuing machine 22 is provided at the facility of the transaction party TR where the label printer 12 is provided. The code issuing machine 22 is provided in a manner that intercepts a communication line between the system server 10 and the label printer 12 and acquires public code data Cd1, which is transmitted from the system server 10 to the label printer 12. The code issuing machine 22 transmits the acquired public code data Cd1 to the history management server 20.
[0025] The code issuing machine 22 receives from the history management server 20 the information code CQ2 data generated based on the transmitted public code Cd1. The confidential information used in the traceability system 120 is further recorded in the information code CQ2. The code issuing machine 22 transmits the information code CQ2 data to the label printer 12 instead of the public code Cd1 data. Due to such intervention of the code issuing machine 22, the label printer 12 prints the information code CQ2 on a paper medium without detecting any modification (replacement) of the acquired code data. As a result, the code-printed medium on which the information code CQ2 is printed is attached to the transaction item instead of the public code Cd1 and distributed together with the transaction item.
[0026] The code scanner 23 is a reading device that reads the confidential information, which is information recorded in the information code CQ2 and added to the information code CQ2, separately from the public information. The code scanner 23 is configured to scan the same target object as the code reader 13 and can thus be physically integrated with the code reader 13. The code scanner 23 includes an imaging sensor in which CCD elements are arranged two-dimensionally, a signal processor 41, and the like. The imaging sensor is capable of reading information recorded on a plane with a higher resolution than the code reader 13. The imaging sensor outputs a captured image in which the information code CQ2 appears (hereinafter referred to as a code captured image) to the signal processor 41.
[0027] The signal processor 41 includes a storage unit that stores a code reading program and the like, a processor that performs code reading processing described later (see Fig. 7) based on the code reading program, and a RAM. The signal processor 41 decodes a read signal (code capture image) of the imaging sensor according to a predetermined rule through the code reading processing and acquires the confidential information recorded in the information code CQ2. Based on the acquired confidential information, the signal processor 41 communicates with the history management server 20 to maintain the transaction record.
[0028] A Smartphone 23s (see Fig. 10), a tablet terminal, and the like with a camera function can be used as the code scanner 23. In this aspect, a dedicated app or application (hereinafter referred to as a code reading app or application) corresponding to the code reading program is provided and installed in the smartphone 23s or the like. The code reading application reads the public code Cd1 in addition to the confidential code Cd2.
[0029] The history management server 20 is a host node capable of communicating with the input terminal 11 in addition to the code output engine 22 and the code scanner 23. The history management server 20 is primarily implemented by a computer including a processor 31, a RAM 32, a storage unit 33, an input and output interface, and a bus connecting these units. The processor 31 is hardware coupled to the RAM 32 for computation processing. The processor 31 executes various types of processing related to data management by accessing the RAM 32. The storage unit 33 stores, as a management program related to data management, a code generation program for causing the processor 31 to execute a code generation method according to the present disclosure.
[0030] The history management server 20 obtains the item information transmitted from the input terminal 11 to the system server 10. Based on the acquisition of the item information, the history management server 20 creates a blockchain associated with the transaction item and stores the item information and the transaction record. Upon receiving a notification that the information code CQ2 is read by the code scanner 23 of each transaction party TR, the history management server 20 accumulates the transaction record of the transaction party TR issuing the notification in the blockchain associated with the transaction item.
[0031] Specifically, upon receiving the notification from the code scanner 23, the history management server 20 generates a new block for storing the transaction record and the like of the transaction party TR from which the notification is issued. The new block includes a hash value calculated from an immediately preceding block in addition to the current transaction record. A hash function such as SHA-256 is used to generate the hash value. The hash value is data holding a predetermined number of bits (for example, 256 bits) and reflecting the item information and the transaction record.
[0032] The history management server 20 performs code generation processing described later (see Fig. 6) Based on the data acquisition of the public code Cd1 from the code issuing engine 22, it generates the information code CQ2 in which at least the hash value is recorded as the confidential information. The history management server 20 outputs the generated information code CQ2 to the code issuing engine 22. Accordingly, the hash value reflecting the subject information and the transaction record is recorded in the information code CQ2 and is available for distribution along with the transaction subject.
[0033] In the traceability system 120, one information code CQ2 can be continuously used for multiple transaction parties TR, or a new information code CQ2 can be issued for each transaction party TR. In the configuration where the new information code CQ2 is issued for each transaction party TR, a latest hash value reflecting the transaction record is generated based on the occurrence of the transaction record of each transaction party TR. The history management server 20 regenerates the information code CQ2 in which the latest hash value is recorded as the confidential information, and provides data in the new information code CQ2 to the label printer 12 at the facility of the transaction party TR executing a transaction.As a result, as an item transaction progresses, the content (hash value) in the information code CQ2 continues to be updated to reflect the transaction record so far. Since the confidential information primarily contains the hash value, the amount of data in the confidential information can be maintained at a constant level even as the item transaction progresses along the supply chain SC.
[0034] The history management server 20 is further capable of issuing a traceability code QRt. The traceability code QRt is a two-dimensional code, such as a QR code, attached to a final product FP delivered through the supply chain SC. The traceability code QRt allows a consumer receiving the final product FP to verify the transaction record. The traceability code QRt records, as an example, a hash value calculated from a recent block on the blockchain and an IP address or URL indicating a request destination of the transaction record.
[0035] The consumer of the final product FP can view the transaction record of the final product FP using a user terminal 50, such as a smartphone or a tablet terminal, and using a traceability verification app or application. Specifically, upon reading the traceability code QRt attached to the final product FP, the user terminal 50 transmits a reference request for the transaction record along with the hash value to the history management server 20, which is the request target. Upon receiving the reference request, the history management server 20 extracts the item information and the transaction record associated with the hash value and generates retrieval data. The history management server 20 transmits the generated retrieval data to the user terminal 50, which issues the reference request.The consumer of the final product FP can check a history of the transaction record by loading the retrieval data received from the history management server 20 using the traceability checking application.
[0036] Next, details of the information code CQ2 are given with reference to Fig. 1 and Fig. 3 to Fig. 6 further described.
[0037] As described above, the information code CQ2 is generated by combining the public code Cd1 and the confidential code Cd2 (see Fig. 1). The public code Cd1 and the confidential code Cd2 each record information through a two-dimensional arrangement of white cells Cew and black cells Ceb. The public code Cd1 and the confidential code Cd2 are two-dimensional codes with different numbers of cells (versions). The confidential code Cd2 is a two-dimensional code with a smaller size than the public code Cd1. This means that the public code Cd1 is a two-dimensional code whose version is larger than that of the confidential code Cd2. Therefore, the number of cells in the public code Cd1 is greater than the number of cells in the confidential code Cd2. The information code CQ2, obtained by covering the confidential code Cd2 with the public code Cd1, is a two-dimensional code with the same number of cells (versions) as the public code Cd1.
[0038] The confidential code Cd2 is enlarged by an integer multiple relative to the public code Cd1 and then combined with the public code Cd1. Therefore, one cell Ce in the confidential code Cd2 is combined over multiple cells Ce in the public code Cd1. As an example, when the confidential code Cd2 is enlarged twice, one enlarged cell Ce is covered over four (2 × 2) cells Ce in the public code Cd1. At this time, four sides of the enlarged cell Ce are covered with a boundary of four outer perimeters without misalignment. The confidential code Cd2 is superimposed on a center of the public code Cd1 while a specific area SA (see Fig. 3) is avoided in the public code Cd1. As an example, at least one search pattern FiP and one format information area FiA of the public code Cd1 are defined as the specific area SA.
[0039] The finder pattern FiP is a pattern for detecting a position of the two-dimensional code (public code Cd1) and is a square formed at three locations under four corners of the two-dimensional code. The format information area FiA is an area that records format information on the two-dimensional code, specifically information indicating an error correction level and a mask pattern. The format information area FiA is defined in an I-shape or an L-shape at a desired position for each finder pattern FiP.
[0040] By avoiding the specific area SA, a central area except for eight cells or nine cells adjacent to four outer edges in the public code Cd1 serves as a combination area CA in which the confidential code Cd2 can be arranged. That is, the number of cells in the combination area CA is seventeen cells less in each of the vertical and horizontal directions than the number of cells in the public code Cd1. The combination area CA is arranged to avoid a version information area ViA, a timing pattern TiP, and part of an alignment pattern AIP in addition to the finder pattern FiP and the format information area FiA. The version information area ViA is an area that records information indicating the version of the two-dimensional code. The version information area ViA is defined at a position adjacent to each of two diagonally arranged finder patterns FiP.
[0041] An enlargement ratio of the confidential code Cd2 is determined such that the enlarged confidential code Cd2 (hereinafter referred to as an enlarged code Cde) falls within the combination area CA. Therefore, the enlargement ratio of the confidential code Cd2 is determined based on the versions of the public code Cd1 and the confidential code Cd2 to be combined (see Fig. 4). As an example, if the version of the public code Cd1 is 17 (the number of cells is 85 × 85), the size of the combination area CA is 68 × 68. In this case, if the version of the confidential code Cd2 is 4 (the number of cells is 33 × 33), a magnification ratio of two can be set (see a dashed square in Fig. 4).
[0042] The information code CQ2 contains a light-colored cell Cc1 (see a light gray area in Fig. 1 and Fig. 5) and a dark colored cell Cc2 (see a dark gray area in Fig. 1 and Fig. 5) in addition to the white cell Cew and the black cell Ceb. The light-colored cell Cc1 and the dark-colored cell Cc2 are located only in the combination area CA. The information code CQ2 holds both the public information and the confidential information in a two-dimensional arrangement of the white cell Cew, the black cell Ceb, the light-colored cell Cc1, and the dark-colored cell Cc2. Each cell Ce in the information code CQ2 is determined based on a combination of the white cell Cew and the black cell Ceb in each of the codes, public code Cd1 and confidential code Cd2 (see Fig. 6).
[0043] Specifically, the cell Ce at a position where both the public code Cd1 and the confidential code Cd2 are the black cell Ceb is also the black cell Ceb in the information code CQ2. Similarly, the cell Ce at a position where both the public code Cd1 and the confidential code Cd2 are the white cell Cew is also the white cell Cew in the information code CQ2.
[0044] Meanwhile, cell Ce at a position where the public code Cd1 is the black cell Ceb and the confidential code Cd2 is the white cell Cew, is the dark-colored cell Cc2 (see a hatched area in Fig. 6). The cell Ce at a position where the public code Cd1 is the white cell Cew and the confidential code Cd2 is the black cell Ceb is the light-colored cell Cc1 (see a dotted area in Fig. 6). The dark-colored cell Cc2 is a cell Ce in a chromatic color whose brightness is closer to the black cell Ceb than to the white cell Cew, and whose brightness is lower than that of the light-colored cell Cc1. For example, red, blue, or green is used as the color of the dark-colored cell Cc2. The light-colored cell Cc1 is a cell Ce in a chromatic color whose brightness is closer to the white cell Cew than to the black cell Ceb, and whose brightness is higher than that of the dark-colored cell Cc2. For example, yellow or the like is used as the color of the light-colored cell Cc1.
[0045] In the information code CQ2, a dark gray cell Cg2 and a light gray cell Cg1 may be used instead of the dark-colored cell Cc2 and the light-colored cell Cc1. When the label printer 12 has a configuration in which color output is unavailable while grayscale output is available, the dark gray cell Cg2 and the light gray cell Cg1 are used. The dark gray cell Cg2 has an achromatic color closer to the black cell Ceb than to the white cell Cew, and is a cell Ce with an intermediate color whose brightness is lower than that of the light gray cell Cg1. For example, dark gray with a brightness of about 25% of that of the white cell Cew is used as the color of the dark gray cell Cg2.The light gray cell Cg1 has an achromatic color closer to the white cell Cew than to the black cell Ceb, and is a cell Ce with an intermediate color whose brightness is higher than that of the dark gray cell Cg2. For example, light gray, with a brightness about 75% of that of the white cell Cew, is used as the color of the light gray cell Cg1.
[0046] Here the code reader 13 detects (see Fig. 2) In the distribution management system 110 corresponding to the old management system, the brightness of each cell Ce, that is, the light reflectance of each cell Ce, when reading the information code CQ2. Therefore, the code reader 13 identifies the light-colored cell Cc1 and the light-gray cell Cg1 as the white cell Cew, and identifies the dark-colored cell Cc2 and the dark-gray cell Cg2 as the black cell Ceb. As a result, the code reader 13 is able to recognize that the information code CQ2 is essentially the same two-dimensional code as the public code Cd1 and read the public information.
[0047] Next, details of the code generation processing (code generation method) described so far for generating the information code CQ2 will be described below based on Fig. 7 with reference to Fig. 1, Fig. 2 and Fig. 4 to Fig. 6 described.
[0048] In the code generation process, the public code Cd1 and the confidential code Cd2 are first prepared. Specifically, the history management server 20 acquires the public code Cd1 by receiving it from the code issuing engine 22 in S11. Next, in S12, the history management server 20 acquires the hash value reflecting the item information and the transaction record, and prepares the confidential information primarily including the hash value.
[0049] In S13, the history management server 20 determines the version and magnification ratio of the confidential code Cd2 based on the version of the public code Cd1 obtained in S11. For example, if the version of the public code Cd1 is 17, the version of the confidential code Cd2 is 4 or less. The history management server 20 determines the version and an error correction level of the confidential code Cd2 such that a data amount (the number of bits) can be recorded in the confidential information obtained in S12. The signal processor 41 further determines a maximum magnification ratio that allows the determined confidential code Cd2 to be accommodated in the combination area CA.
[0050] In S14, the history management server 20 generates the confidential code Cd2 with the version and error correction level determined in S13. Further, in S15, the history management server 20 enlarges the confidential code Cd2 with the enlargement ratio determined in S13 to generate the enlarged code Cde.
[0051] In S16, the history management server 20 performs a combination by overlaying the enlarged code Cde generated in S15 onto the combination area CA of the public code Cd1 obtained in S11. As described above, in the public code Cd1, the black cell Ceb covering the white cell Cew in the enlarged code Cde is converted into the dark-colored cell Cc2 or the dark-gray cell Cg2 (see Fig. 6). In the public code Cd1, the white cell Cew, which covers the black cell Ceb in the enlarged code Cde, is converted into the light-colored cell Cc1 or the light-gray cell Cg1. As a result, the information code CQ2 is generated, in which the white cell Cew, the black cell Ceb, the light-colored cell Cc1, and the dark-colored cell Cc2 are arranged two-dimensionally. The information code CQ2 thus generated is output to the transaction party TR in S17.
[0052] Next, details of the code reading processing (code reading method) for reading the confidential code Cd2 from the information code CQ2 based on Fig. 8 and Fig. 9 with reference to Fig. 1 to Fig. 3 described.
[0053] In S31, in the code reading processing, the signal processor 41 acquires a position and posture of the information code CQ2 appearing in the code pickup image based on detection of the finder pattern FiP. In S32, the signal processor 41 applies preprocessing, such as keystone correction and color correction, to an area where the information code CQ2 appears, based on information about the position and posture of the information code CQ2, and prepares a processed image (hereinafter referred to as a corrected image Pc0) suitable for code reading. The corrected image Pc0 is an image corrected to a shape obtained by imaging the information code CQ2 from the front. In addition, in the corrected image Pc0, a gradation value of the entire image is adjusted so that gradation valuesGradation values of the white cell Cew and the black cell Ceb in the information code CQ2 are essentially the same.
[0054] In S33, the signal processor 41 specifies the combination area CA in which the confidential code Cd2 is combined with the information code CQ2 appearing in the corrected image Pc0, and cuts out the specified combination area CA from the information code CQ2. In other words, in S33, specification and cutting are performed in a central area where the light-colored cell Cc1 and the dark-colored cell Cc2 are located.
[0055] The signal processor 41 first generates a first converted image Pc1 obtained by converting the black cell Ceb in the information code CQ2 into the same white color as the white cell Cew to specify the combination area CA (see Fig. 9). Next, the signal processor 41 generates a second converted image Pc2 by converting the light-colored cell Cc1 and the dark-colored cell Cc2 in the first converted image Pc1 to the same black color as the black cell Ceb. Further, the signal processor 41 generates an inverted image Pc3 obtained by inverting the lightness and darkness (white and black) of colors in the second converted image Pc2. The signal processor 41 specifies the combination area CA based on a light color (white) area in the inverted image Pc3. Specifically, the signal processor 41 determines coordinates of a pair of corners diagonally located in the white area in the inverted image Pc3 by designating the inverted image Pc3. The signal processor 41 acquires the pair of coordinates as coordinates indicating a formation area of the combination area CA.The signal processor 41 cuts out a cutout image Pc4 containing the confidential code Cd2 from the combination area CA in the corrected image Pc0 based on the obtained coordinates.
[0056] In S34, the signal processor 41 extracts the confidential code Cd2 from the cutout image Pc4 by applying processing for performing color conversion. Specifically, the signal processor 41 generates an extracted image Pc5 in which the confidential code Cd2 is extracted by monochrome conversion in which the light-colored cell Cc1 is treated as the black cell Ceb and the dark-colored cell Cc2 is treated as the white cell Cew among the cells Ce in the combination area CA. Further, the signal processor 41 removes noise and artifacts in the extracted image Pc5 by performing dilation and erosion on a black area in the extracted image Pc5. By applying such correction processing to the extracted image Pc5, the signal processor 41 generates a restored image Pc6 in which the confidential code Cd2 is restored.
[0057] In S35, the signal processor 41 reads the restored image Pc6 as the confidential code Cd2, and reads the confidential information, thereby completing the code reading processing. At this time, in the restored image Pc6, one cell Ce in the confidential code Cd2 has a size corresponding to multiple cells Ce in the public code Cd1. Therefore, the signal processor 41 reads the confidential code Cd2 by treating the multiple cells Ce in the public code Cd1 as one cell Ce. Therefore, reading the confidential information from the restored image Pc6 is facilitated.
[0058] The code reading processing may be performed by the history management server 20. In this aspect, the code capture image or the corrected image Pc0 is transmitted from the code scanner 23 to the history management server 20. The history management server 20 performs processing of reading the confidential code Cd2 from the code capture image or the corrected image Pc0 obtained by reception. When the light gray cell Cg1 and the dark gray cell Cg2 are used instead of the light-colored cell Cc1 and the dark-colored cell Cc2, it is still possible to recover the confidential code Cd2 through the above processing.
[0059] In the present embodiment described so far, since the confidential code Cd2 is enlarged relative to the public code Cd1, a size of the cell Ce in the confidential code Cd2 is larger than a size of the cell Ce in the public code Cd1. Therefore, it is possible to reduce code reading errors even in the case of the information code CQ2 including the dark-colored cell Cc2 and the light-colored cell Cc1.
[0060] In particular, it becomes more difficult to read the two-dimensional code as the size of a cell Ce decreases. In particular, the recognition performance further deteriorates as the information code CQ2 including the light-colored cell Cc1 and the dark-colored cell Cc2 becomes finer. To solve this problem, in the present embodiment, the confidential code Cd2, whose version is smaller than that of the public code Cd1, is enlarged relative to the public code Cd1 and then combined with the public code Cd1. In this way, since the size of a cell Ce can be ensured by enlarging the confidential code Cd2 at the time of combining, it is possible to limit the recognizability deterioration even when the light-colored cell Cc1 and the dark-colored cell Cc2 are included.
[0061] Additionally, in the present embodiment, the confidential information recorded in the confidential code Cd2 is content primarily including the hash value. Therefore, the amount of information that needs to be recorded as the confidential information is limited, and consequently, it is possible to reduce the version of the confidential code Cd2. As described above, the method for improving detectability by enlarging the confidential code Cd2 is suitable for the traceability system 120 that records the hash value as the confidential information.
[0062] In the present embodiment, the confidential code Cd2 is enlarged by an integer multiple relative to the public code Cd1 and combined with the public code Cd1. Therefore, a situation where multiple cells Ce in the confidential code Cd2 are combined with one cell Ce in the public code Cd1 is avoided. According to the above, since the recognizability of the public code Cd1 can be ensured, it is possible to reduce errors in reading the public code Cd1.
[0063] Furthermore, in the present embodiment, the private code Cd2 is smaller than the public code Cd1 and is combined at the center of the public code Cd1. Therefore, the dark-colored cell Cc2 and the light-colored cell Cc1 are not formed near an outer edge of the information code CQ2. By avoiding the proximity of the outer edge, which is easily affected by light, it is possible to reduce reading errors even in the case of the information code CQ2 containing the dark-colored cell Cc2 and the light-colored cell Cc1.
[0064] In particular, as in Fig. As shown in Figure 10, for example, when the information code CQ2 printed on a label or the like is read using the code reading app or code reading application in the smartphone 23s, light enters from a periphery of the smartphone 23s toward the label, and thus, an influence of light occurs near the outer edge of the information code CQ2. As a result, a phenomenon such as whitening or a white spot occurs at a peripheral portion of the public code Cd1 read from the information code CQ2 (see elliptical areas in Fig. 10). When light affects the light-colored cell Cc1 in this way, it is difficult to distinguish the light-colored cell Cc1 from the white cell Cew. Consequently, the light-colored cell Cc1 that should be converted into the black cell Ceb is easily misidentified as the white cell Cew due to the influence of light. As a result, it is difficult to trace the colored cells Cc1 and Cc2 back to the black cell Ceb and the white cell Cew. Even when using the code scanner 23, the same problem may occur.
[0065] However, in the present embodiment, the size of the private code Cd2 (enlarged code Cde) is set such that the public code Cd1 is larger, and the private code Cd2 is located at the center of the public code Cd1. Therefore, the light is less likely to affect the colored cells Cc1 and Cc2. As a result, the processing of returning the colored cells Cc1 and Cc2 to the black cell Ceb and the white cell Cew can be reliably performed, and consequently, it is possible to reduce errors in reading the private code Cd2.
[0066] Furthermore, as the version of the information code CQ2 increases, there is a tendency for a distance between the code scanner 23 or the smartphone 23s and the information code CQ2 to increase so that the entire information code CQ2 can be read. Accordingly, it is easier for light to enter the outer edge portion of the information code CQ2. However, according to the above-described central arrangement of the confidential code Cd2, it is possible to limit the influence of light on the colored cells Cc1 and Cc2. As described above, as the version of the public code Cd1 increases, the central arrangement of the confidential code Cd2 in the public code Cd1 is more effective in reducing errors in code reading.
[0067] Additionally, in the present embodiment, the confidential code Cd2 is combined with the public code Cd1, while avoiding the specific area SA in the public code Cd1. Specifically, the finder pattern FiP and the format information area FiA are treated as the specific area SA, and the light-colored cell Cc1 and the dark-colored cell Cc2 are not located in the finder pattern FiP and the format information area FiA. Accordingly, the recognizability degradation of the public code Cd1 is limited, and thus, it is possible to reduce errors in reading the public code Cd1.
[0068] In the present embodiment, in the step of specifying the combination area CA, the first converted image Pc1 is generated by converting the black cell Ceb in the information code CQ2 to the same color as the white cell Cew. Further, the second converted image Pc2 is generated by converting the colored cells Cc1 and Cc2 in the first converted image Pc1 to the same color as the black cell Ceb, and the inverted image Pc3 is generated by inverting the lightness and darkness of the colors in the second converted image Pc2. Then, the combination area CA is specified based on a light-colored area in the inverted image Pc3. As described above, according to the image processing in which black-and-white inversion is performed after the colored cells Cc1 and Cc2 are blackened, it is possible to perform processing of specifying formation areas.Forming areas of the colored cells Cc1 and Cc2 are accelerated. As a result, it is possible to quickly read confidential information from the information code CQ2.
[0069] In the embodiment, the signal processor 41 corresponds to a "processor" that implements the code reading method, the public code Cd1 corresponds to a "first code," and the confidential code Cd2 corresponds to a "second code." The white cell Cew corresponds to a "light-colored cell," the black cell Ceb corresponds to a "dark-colored cell," the light-colored cell Cc1 or the light gray cell Cg1 corresponds to a "semi-light-colored cell," and the dark-colored cell Cc2 or the dark gray cell Cg2 corresponds to a "semi-dark-colored cell." Furthermore, the combination area CA corresponds to a "formation area."
[0070] A technical idea that can be further understood from the embodiment described so far is described below as Appendices 1 to 6. Appendix 1
[0071] A code generation method to be executed by at least one processor (31) and causing the at least one processor (31) to execute: preparing (S11 to S14) a first code (Cd1) and a second code (Cd2) in each of which information is recorded by a plurality of cells (Ce) arranged in a two-dimensional array; and generating (S15, S16) an information code (CQ2) by combining the first code with the second code, where combining the first code with the second code contains enlarging the second code relative to the first code to combine one cell of the second code over two or more cells of the first code, specifying a light-colored cell (Cew) at a position where both the first code and the second code have light-colored cells (Cew), specifying a dark-colored cell (Ceb) at a position where both the first code and the second code have dark-colored cells (Ceb), specifying a semi-light colored cell (Cc1, Cg1) at a position where the first code has the light colored cell and the second code has the dark colored cell, the semi-light colored cell having a color that is closer to the light colored cell than to the dark colored cell, and specifying a semi-dark cell (Cc2, Cg2) at a position where the first code has the dark cell and the second code has the light cell, the semi-dark cell having a color closer to the dark cell than to the light cell. Appendix 2
[0072] A code generation method to be executed by at least one processor (31) and causing the at least one processor to execute: preparing (S11 to S14) a first code (Cd1) and a second code (Cd2) in each of which information is recorded by a plurality of cells (Ce) arranged in a two-dimensional array, and generating (S16) an information code (CQ2) by combining the first code with the second code, where combining the first code with the second code contains combining the second code, which has a smaller size than the first code, in a center of the first code, specifying a light-colored cell (Cew) at a position where both the first code and the second code have light-colored cells (Cew), specifying a dark-colored cell (Ceb) at a position where both the first code and the second code have dark-colored cells (Ceb), specifying a semi-light colored cell (Cc1, Cg1) at a position where the first code has the light colored cell and the second code has the dark colored cell, the semi-light colored cell having a color that is closer to the light colored cell than to the dark colored cell, and specifying a semi-dark colored cell (Cc2, Cg2) at a position where the first code has the dark colored cell and the second code has the light colored cell, wherein the semi-dark colored cell (Cc2, Cg2) has a color that is closer to the dark colored cell than to the light colored cell. Appendix 3
[0073] A code generating apparatus that generates an information code (CQ2) by combining a first code (Cd1) with a second code (Cd2), wherein in each of the first code and second code, information is recorded by a plurality of cells (Ce) arranged in a two-dimensional array, the code generating apparatus comprising: a code preparation unit (S11 to S14) configured to prepare the first code and the second code; and a code combining unit (S15, S16) configured to generate the information code by combining the first code with the second code, where the code combining unit enlarging the second code relative to the first code to combine one of the plurality of cells in the second code over two or more of the plurality of cells in the first code, specifies a light-colored cell (Cew) at a position where both the first code and the second code have light-colored cells (Cew), specifies a dark-colored cell (Ceb) at a position where both the first code and the second code have dark-colored cells (Cew), defines a semi-light colored cell (Cc1, Cg1) at a position where the first code has the light colored cell and the second code has the dark colored cell, wherein the semi-light colored cell (Cc1, Cg1) has a color that is closer to the light colored cell than to the dark colored cell, and specifies a semi-dark cell (Cc2, Cg2) at a position where the first code has the dark cell and the second code has the light cell, where the semi-dark cell (Cc2, Cg2) has a color closer to the dark cell than to the light cell. Appendix 4
[0074] A code generating apparatus that generates an information code (CQ2) by combining a first code (Cd1) with a second code (Cd2), wherein in each of the first code and second code, information is recorded by a plurality of cells arranged in a two-dimensional array, the code generating apparatus comprising: a code preparation unit (S11 to S14) configured to prepare the first code and the second code; and a code combining unit (S16) configured to generate the information code by combining the first code with the second code, where the code combining unit the second code, which has a smaller size than the first code, combined in a center of the first code, specifies a light-colored cell (Cew) at a position where both the first code and the second code have light-colored cells (Cew), specifies a dark-colored cell (Ceb) at a position where both the first code and the second code have dark-colored cells (Ceb), defines a semi-light colored cell (Cc1, Cg1) at a position where the first code has the light colored cell and the second code has the dark colored cell, wherein the semi-light colored cell (Cc1, Cg1) has a color that is closer to the light colored cell than to the dark colored cell, and specifies a semi-dark cell (Cc2, Cg2) at a position where the first code has the dark cell and the second code has the light cell, where the semi-dark cell (Cc2, Cg2) has a color closer to the dark cell than to the light cell. Appendix 5
[0075] A code reading apparatus that reads a second code (Cd2) from an information code (CQ2), the information code being generated by combining a first code (Cd1) and the second code, in each of the first code and the second code, information is recorded by a plurality of cells (Ce) arranged in a two-dimensional array, the code reading apparatus comprising: an image acquisition unit (S31) configured to acquire a code image in which the information code is recorded; and an image conversion unit (S34, S35) configured to a semi-light colored cell (Cc1, Cg1) having a color closer to a light colored cell (Cew) than to a dark colored cell (Ceb) than to determine the dark colored cell in the information code, and a semi-dark cell (Cc2, Cg2) that has a color that is closer to the dark cell than to the light cell, than to determine the light cell in the information code, wherein the image conversion unit reads the second code by identifying two or more of the plurality of cells in the first code as one cell. Appendix 6
[0076] A code reading apparatus that reads a second code (Cd2) from an information code (CQ2), the information code being generated by combining a first code (Cd1) and the second code, in each of the first code and the second code, information is recorded by a plurality of cells (Ce) arranged in a two-dimensional array, the code reading apparatus comprising: an image acquisition unit (S31) configured to acquire a code image in which the information code is recorded; and an image conversion unit (S33, S34) configured to to specify a training area (CA) of the second code, which will be combined in a center of the first code, a semi-light colored cell (Cc1, Cg1) having a color closer to a light colored cell (Cew) than to a dark colored cell (Ceb) as the dark colored cell in the training area, and a semi-dark colored cell (Cc2, Cg2) that has a color closer to the dark colored cell than to the light colored cell, as the light colored cell in the training area. In the embodiment, the history management server 20 corresponds to the “code generation apparatus,” and the history management server 20 or the code scanner 23 corresponds to the “code reading apparatus.” Other embodiments
[0077] Although an embodiment according to the present disclosure has been described above, the present disclosure is not construed as being limited to the embodiment and may be applied to various embodiments and combinations within a scope that does not deviate from the spirit of the present disclosure.
[0078] In a first modification of the embodiment, an entire area of the information code CQ2 can be used as the combination area CA. In other words, in the first modification, the specific area SA in which combination is avoided is not specified. As a result, it is possible to specify a larger magnification ratio than that in the embodiment for the confidential code Cd2. As an example, the enlarged code Cde, which is enlarged to twice the size of the confidential code Cd2, whose version is 4, can be combined with the public code Cd1, whose version is 13 (see a dashed square in Fig. 11). As a result, in the first modification, it is possible to further improve the detectability of the confidential code Cd2.
[0079] In a second modification of the above-described embodiment, as shown in Fig. As shown in Figure 12, the combination area CA is offset and located at one of the four corners of the information code CQ2 where the search pattern FiP is missing. In the second modification, an area of the combination area CA may be larger than that in the embodiment in which the combination area CA is set at the center of the information code CQ2. The number of cells in the combination area CA is smaller than the number of cells in the public code Cd1 by 9 cells and 8 cells in the vertical and horizontal directions, respectively. For example, when the version of the public code Cd1 is 15 (the number of cells is 77 × 77), the size of the combination area CA is 68 × 69. In this case, it is possible to combine the enlarged code Cde, which is enlarged to twice the size of the confidential code Cd2 (the number of cells is 33 × 33), whose version is 4 (see a dashed square in Fig. 13).
[0080] According to the first and second modifications, it is possible to obtain the same effect as that in the embodiment and reduce code reading errors by enlarging the confidential code Cd2.
[0081] In a third modification of the embodiment, the processing of enlarging the private code Cd2 is omitted. The private code Cd2 is combined with the combination area CA at the center of the public code Cd1 in a manner that avoids the specific area SA. In the third modification described above, since the light-colored cell Cc1 and the dark-colored cell Cc2 are further not located near the outer edge of the information code CQ2, it is possible to avoid a decrease in recognizability due to the influence of light.
[0082] In a fourth modification of the embodiment, the method of specifying the combination area CA in the code reading processing differs from that in the embodiment. The signal processor 41 in the fourth modification starts searching for the light-colored cell Cc1 and the dark-colored cell Cc2 from a pair of corners (for example, an upper left corner and a lower right corner) diagonally arranged in the information code CQ2. The signal processor 41 cuts out the cutout image Pc4 by setting positions at which the light-colored cell Cc1 and the dark-colored cell Cc2 are detected as the coordinates indicating the formation area of the combination area CA. With such a method, it is further possible to determine the coordinates of the pair of corners.
[0083] In a fifth modification of the embodiment, a magnification ratio that is not an integer (for example, 1.5 times) is set. As long as reading of the public code Cd1 by the code reader 13 used in the distribution management system 110 is not hindered, a boundary of the cell Ce in the confidential code Cd2 can be located in a cell Ce in the public code Cd1. In the embodiment, the confidential code Cd2 is combined such that the boundary of the cell Ce in the confidential code Cd2 (enlarged code Cd2) overlaps the boundary of the cell Ce in the public code Cd1. However, as long as code reading is available, the boundary of the cell Ce in the confidential code Cd2 may be misaligned with the boundary of the cell Ce in the public code Cd1.
[0084] In the embodiment, a light color constituting the white cell Cew may not be strictly white. For example, a color of a base material such as a label on which the information code CQ2 is printed (for example, fairly light gray or ivory) may correspond to the light color. Similarly, a dark color constituting the black cell Ceb may not be strictly black. For example, a color of an ink used in the label printer 12 (for example, dark blue or dark green) may correspond to the dark color.
[0085] The public code Cd1 and the private code Cd2 are not limited to QR codes. Two-dimensional codes other than QR codes can be used as the first code and the second code and combined into the information code. When QR codes are used as the codes, the error correction capability (error correction level) may also differ.
[0086] The information code CQ2 according to the present disclosure can be used by a system other than the distribution management system 110 and the traceability system 120. Furthermore, information recorded in the first code and the second code, which are sources of the information code, is not limited to the public information and the confidential information, and can be appropriately changed according to the use of the information code.
[0087] In the embodiment, in addition to the information code CQ2 used in the supply chain SC, the traceability code QRt is output and attached to the final product FP. However, the information code CQ2 can be used as the traceability code QRt. In this case, the traceability verification application executes the code reading processing and provides the user terminal 50 with a function for reading the confidential code Cd2. The final product FP delivered through the supply chain SC can be modified as appropriate. For example, the traceability system 120 can manage various items, such as an automobile, a battery, a semiconductor, fresh food, an aquatic product, food, flowers, a medicine, or a chemical.
[0088] The hash function used in the history management server 20 is a cryptographic hash function and has a characteristic that the same hash value is not output from different inputs, and it is essentially impossible to estimate an input from the output hash value. For example, instead of SHA-256, an encryption algorithm such as SHA-1, SHA-2, or SHA-3 may be appropriately used according to an output length (the number of bits) that can be recorded in the confidential code Cd2 as the confidential information. The code generation processing executed by the history management server 20 can be executed by the code output engine 22 or the like on an edge side. In this aspect, the code output engine 22 corresponds to the "code generation apparatus."
[0089] In the embodiment, functions provided by the history management server, the code scanner, and the like may be provided by software and hardware for executing the software, software only, hardware only, or a composite combination of these. When such functions are provided by an electronic circuit as the hardware, each function may be provided by a digital circuit including a large number of logic circuits or an analog circuit.
[0090] The processor (signal processor) in the embodiment may include at least one processing core, such as a central processing unit (CPU) and a graphics processing unit (GPU). The processor may further include a field-programmable gate array (FPGA), a neural network processing unit (NPU), and an IP core with another dedicated function.
[0091] A form of a non-volatile tangible storage medium used as each storage unit in the embodiment and storing each program related to code generation and code reading in the present disclosure can be appropriately changed. For example, the storage medium is not limited to a configuration provided on a circuit board, and may be provided in a form of a memory card inserted into a slot portion and electrically connected to a bus of a computer. Further, the storage medium may be an optical disk, a hard disk drive, or the like, which serves as a basis for copying a program to a computer.
[0092] The control unit and method thereof described in the present disclosure may be implemented by a dedicated computer constituting a processor programmed to perform one or more functions embodied by a computer program. Alternatively, the apparatus and method thereof according to the present disclosure may be implemented by a dedicated hardware logic circuit. Alternatively, the apparatus and method thereof according to the present disclosure may be implemented by one or more dedicated computers implemented by a combination of a processor executing a computer program and one or more hardware logic circuits. The computer program may be stored in a computer-readable non-transitory tangible recording medium as an instruction executed by a computer. QUOTES CONTAINED IN THE DESCRIPTION
[0000] This list of documents submitted by the applicant was generated automatically and is included solely for the convenience of the reader. This list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions. Cited patent literature
[0000] JP 2022-087899
[0001] JP 2021-196762 A
[0004]
Claims
[1] An information code produced by combining a first code (Cd1) and a second code (Cd2), in each of the first code and the second code, information is recorded by a plurality of cells (Ce) arranged in a two-dimensional array, the information code comprising: a light-colored cell (Cew); a dark colored cell (Ceb); a semi-light-colored cell (Cc1, Cg1) having a color that is closer to the light-colored cell than to the dark-colored cell, the semi-light-colored cell being identified as the same as the light-colored cell upon reading the first code and being identified as the dark-colored cell upon reading the second code; and a semi-dark cell (Cc2, Cg2) with a color that is closer to the dark cell than to the light cell, wherein the semi-dark cell is identified as the same as the dark cell when reading the first code and is identified as the light cell when reading the second code, wherein the second code is enlarged relative to the first code and one of the plurality of cells in the second code is combined over two or more of the plurality of cells in the first code. [2] The information code according to claim 1, wherein the second code is enlarged by an integer multiple relative to the first code and then combined with the first code. [3] The information code according to claim 1, wherein the second code has a smaller size than the first code and is combined at a center of the first code. [4] An information code produced by combining a first code (Cd1) and a second code (Cd2), in each of the first code and the second code, information is recorded by a plurality of cells (Ce) arranged in a two-dimensional array, the information code comprising: a light-colored cell (Cew); a dark colored cell (Ceb); a semi-light-colored cell (Cc1, Cg1) having a color that is closer to the light-colored cell than to the dark-colored cell, the semi-light-colored cell being identified as the same as the light-colored cell upon reading the first code and being identified as the dark-colored cell upon reading the second code; and a semi-dark cell (Cc2, Cg2) with a color that is closer to the dark cell than to the light cell, wherein the semi-dark cell is identified as the same as the dark cell when reading the first code and is identified as the light cell when reading the second code, wherein the second code has a smaller size than the first code and is combined at a center of the first code. [5] An information code according to any one of claims 1 to 4, wherein the second code is combined with the first code by avoiding a specific area (SA) of the first code. [6] A code reading method to be executed by at least one processor (41), the code reading method reading a second code (Cd2) from an information code (CQ2), the information code being generated by combining a first code (Cd1) with the second code, in each of the first code and the second code, information is recorded by a plurality of cells (Ce) arranged in a two-dimensional array, the code reading method comprising: determining a semi-light colored cell (Cc1, Cg1) that has a color that is closer to a light colored cell (Cew) than to a dark colored cell (Ceb) than the dark colored cell; determining a semi-dark cell (Cc2, Cg2) that has a color that is closer to the dark cell than to the light cell than the light cell; and reading the second code by identifying two or more cells in the first code as one cell. [7] A code reading method to be executed by at least one processor (41), the code reading method reading a second code (Cd2) from an information code (CQ2), the information code being generated by combining a first code (Cd1) with the second code, in each of the first code and the second code, information is recorded by a plurality of cells (Ce) arranged in a two-dimensional array, the code reading method comprising: specifying a training area (CA) of the second code combined in a center of the first code; determining a semi-light colored cell (Cc1, Cg1) having a color closer to a light colored cell (Cew) than to a dark colored cell (Ceb) among the cells in the training area as the dark colored cell; and determining a semi-dark colored cell (Cc2, Cg2) having a color closer to the dark colored cell than to the light colored cell, among the cells in the training area, than the light colored cell. [8] The code reading method according to claim 7, wherein specifying the training area includes generating a first converted image (Pc1) by converting the dark-colored cell in the information code into a color the same as the light-colored cell, generating a second converted image (Pc2) by converting the semi-light colored cell and the semi-dark colored cell in the first converted image into a color the same as the dark colored cell, generating an inverted image (Pc3) by inverting the brightness and darkness of the color in the second converted image, and specifying the training area based on a light-colored area in the inverted image.
Citation Information
Patent Citations
Information code, information code print medium, information code generating apparatus, information code generating program, information code generating method, information code reading apparatus, information code reading program, and information code reading method
JP2021196762A
Coating device and decorative laminate production method
JP2022087899A
2022-087899