WO2019132047A1 - 複合コードパターン、生成装置、読み取り装置、方法およびプログラム - Google Patents

複合コードパターン、生成装置、読み取り装置、方法およびプログラム Download PDF

Info

Publication number
WO2019132047A1
WO2019132047A1 PCT/JP2019/000028 JP2019000028W WO2019132047A1 WO 2019132047 A1 WO2019132047 A1 WO 2019132047A1 JP 2019000028 W JP2019000028 W JP 2019000028W WO 2019132047 A1 WO2019132047 A1 WO 2019132047A1
Authority
WO
WIPO (PCT)
Prior art keywords
code
information
cell
composite
cells
Prior art date
Application number
PCT/JP2019/000028
Other languages
English (en)
French (fr)
Inventor
吉田 健治
森井 昌克
Original Assignee
株式会社I・Pソリューションズ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2018109090A external-priority patent/JP6403085B1/ja
Application filed by 株式会社I・Pソリューションズ filed Critical 株式会社I・Pソリューションズ
Priority to KR1020207022146A priority Critical patent/KR20200106510A/ko
Priority to EP19733929.4A priority patent/EP3734510A4/en
Priority to CN201980015364.8A priority patent/CN112352245A/zh
Priority to BR112020013344-2A priority patent/BR112020013344A2/pt
Priority to US16/958,743 priority patent/US11755867B2/en
Publication of WO2019132047A1 publication Critical patent/WO2019132047A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06046Constructional details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/38Encryption being effected by mechanical apparatus, e.g. rotating cams, switches, keytape punchers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K1/00Methods or arrangements for marking the record carrier in digital fashion
    • G06K1/12Methods or arrangements for marking the record carrier in digital fashion otherwise than by punching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K1/00Methods or arrangements for marking the record carrier in digital fashion
    • G06K1/12Methods or arrangements for marking the record carrier in digital fashion otherwise than by punching
    • G06K1/121Methods or arrangements for marking the record carrier in digital fashion otherwise than by punching by printing code marks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06046Constructional details
    • G06K19/06056Constructional details the marking comprising a further embedded marking, e.g. a 1D bar code with the black bars containing a smaller sized coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06046Constructional details
    • G06K19/06075Constructional details the marking containing means for error correction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06046Constructional details
    • G06K19/06131Constructional details the marking comprising a target pattern, e.g. for indicating the center of the bar code or for helping a bar code reader to properly orient the scanner or to retrieve the bar code inside of an image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/12Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using a selected wavelength, e.g. to sense red marks and ignore blue marks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14172D bar codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords

Definitions

  • the present invention relates to a composite code pattern, a generator, a reader, a method and a program.
  • one aspect of the present invention aims to further increase the amount of information while reducing the difficulty of reading from the code information expression in a one-dimensional or two-dimensional image.
  • the invention can be illustrated as a composite code pattern.
  • the present composite code pattern includes a first code in which a plurality of cells each having at least one of two or more distinguishable colors in at least a part of the regions is arranged in an array shape, and any one of the arranged cells. And a second code in which a mark is arranged in the above specific cell.
  • QR Code It is a figure which illustrates the structure of QR Code. It is a figure which illustrates the structure of QR Code including the subcell which further subdivided a part of information cell. It is a figure which illustrates the pattern which expresses a 2nd code by a dot smaller than a subcell. It is a figure which shows the example of a 2nd code
  • FIG. 2 is a diagram illustrating the configuration of an information system for providing a service by a composite code according to the first embodiment. It is a figure which illustrates the hardware constitutions of an information processor. It is a flowchart which illustrates compound code generation processing A by a contents server. 6 is a flowchart illustrating a compound code reading process A by the user device. It is a flowchart which illustrates the details of analysis processing of the 2nd code in a cell.
  • FIG. 8 is a diagram illustrating the configuration of an information system according to a second embodiment. 6 is a flowchart illustrating compound code generation processing B.
  • FIG. 1 is a diagram illustrating the configuration of an information system for providing a service by a composite code according to the first embodiment. It is a figure which illustrates the hardware constitutions of an information processor. It is a flowchart which illustrates compound code generation processing A by a contents server. 6 is a flowchart illustrating a compound code reading process A by the user device. It is a flowchart which
  • FIG. 6 is a flowchart illustrating compound code reading processing B; 15 is a flowchart illustrating a reading process of a composite code in the third embodiment. It is a figure which illustrates the relation of the printed dark cell and a pixel. In this example, bright dots are formed in a dark cell. This is an example in which a dark dot is formed in a bright cell. It is a figure which illustrates the determination method of the position of the dot by a bounding box. In this example, dot codes are formed in cells printed at 5 ⁇ 5 pixels. In this example, dot codes are formed in a cell printed at 7 ⁇ 7 pixels. FIG.
  • FIG. 18 is a diagram illustrating a compound code generation process for authenticity determination of the process example 1; 5 is a flowchart illustrating a compound QR code reading / authentication process of processing example 1; FIG. 18 is a diagram illustrating a compound code generation process for authenticity determination of process example 2; 15 is a flowchart illustrating a compound QR code reading / authentication process of processing example 2; FIG. 18 is a diagram illustrating a compound code generation process for authenticity determination of process example 3; 15 is a flowchart illustrating a compound QR code reading / authentication process of processing example 3; FIG. 18 is a diagram illustrating a compound code generation process for the authenticity determination of the process example 4; 15 is a flowchart illustrating a compound QR code reading / authentication process of processing example 4; FIG.
  • FIG. 18 is a diagram illustrating a compound code generation process for authenticity determination of process example 5; 15 is a flowchart illustrating a compound QR code reading / authentication process of processing example 5; FIG. 18 is a diagram illustrating a compound code generation process for authenticity determination of process example 6; It is a flowchart which illustrates compound QR code reading / attestation processing of processing example 6.
  • FIG. 18 is a diagram illustrating a compound code generation process for authenticity determination of process example 7; It is a flowchart which illustrates compound QR code reading / attestation processing of processing example 7.
  • eight arrangement candidate positions of information dots in a cell are arranged. It is a figure which illustrates eight arrangement positions of the dot in one cell.
  • required according to the specification of QR Code is an example of the image shifted from the original center of a cell. It is the figure which showed the direction and bounding box of the 2nd code. It is an example of the bright color cell in which the dot code was formed. It is an example of the picture which picturized the cell. It is an example of the picture which picturized the cell. It is an example which binarized the picture which picturized the cell. It is an example which binarized the picture which picturized the cell. It is an example of processing which binarizes an image. It is a figure which illustrates that the central coordinate value of an information dot is settled in a bounding box.
  • FIG. 1 It is a figure which illustrates that the central coordinate value of an information dot is settled in a bounding box.
  • This is an example of a composite code in which a dot code is formed by arranging reference dots only in dark cells.
  • chord is an example of the image which has shifted from the original center of a cell. It is the Example which showed a part of compound code.
  • the arrangement candidate position of the information dot in the cell is set, and the reference dot is arranged at the center.
  • chord is an example of the image which has shifted from the original center of a cell.
  • chord is an example of the image which has shifted from the original center of a cell. It is the Example which showed a part of compound code.
  • bright color cells are divided into four vertically and horizontally, and arrangement candidate positions of information divided cells and reference dots are arranged.
  • chord is an example of the image which has shifted from the original center of a cell. It is the figure which showed the direction and bounding box of the 2nd code. It is the Example which showed a part of compound code.
  • light color cells are divided into five in vertical and horizontal directions, and arrangement candidate positions of information divided cells and reference divided cells are arranged.
  • chord is an example of the image which has shifted from the original center of a cell. It is the figure which showed the direction and bounding box of the 2nd code. It is the Example which showed a part of compound code.
  • light color cells are divided into five in vertical and horizontal directions, and arrangement candidates for information divided cells are arranged.
  • chord is an example of the image which has shifted from the original center of a cell.
  • FIG. 1 It is the figure which showed the direction and bounding box of the 2nd code.
  • This embodiment is an example in which the arrangement candidate positions of the information division cells are arranged in 12 places so as not to be adjacent vertically and horizontally. It is a figure shown about a bounding box. It is a figure (1) which shows the state to which the bounding box was moved. It is a figure (2) which shows the state to which the bounding box was moved. It is a figure (3) which shows the state to which the bounding box was moved. It is a figure (4) which shows the state to which the bounding box was moved. It is a figure (5) which shows the state to which the bounding box was moved. It is a figure (6) which shows the state to which the bounding box was moved.
  • the compound code which added the direction dot and set the direction of the 2nd code It is an example of the compound code which added the direction dot and set the direction of the 2nd code. It is an embodiment of a composite code in which the orientation of the second code is set by changing the arrangement of the reference dots constituting the reference pattern.
  • the light and dark of a predetermined area represents the light and dark of the cell, and a part of the composite code in which the information dot is indicated in dark is shown.
  • the light and dark of a predetermined area represents the light and dark of the cell, and a part of the composite code in which the information dot is indicated in dark is shown.
  • FIG. 113 (A) is an example in which numbers are set in the arrangement candidate positions of information dots in dark cells
  • (b) is an example in which numbers are set in the arrangement candidate positions of information dots in bright cells
  • (c) These are the arrangement specific example of FIG. 113 (a) and the example of corresponding numerical data
  • (d) are the arrangement specific example of FIG. 113 (b) and the example of corresponding numerical data.
  • It is a figure which illustrates the grating
  • (A) is an image of the formed QR code
  • (b) is an image of the QR code actually imaged
  • (c) is an image obtained by binarizing the imaged QR code
  • (d ) is a diagram showing center coordinates of the founder pattern and the alignment pattern
  • (e) is a diagram showing center coordinates of all cells. It is the figure which illustrated the correction method of the reference point by the lattice based on a reference cell. It is a figure which illustrates a part of the grid
  • a bright reference cell having a deformed predetermined area is arranged, and a part of a composite code in which information dots are shown in dark. It is a figure which illustrates a part of the grid
  • light and dark reference cells defining a reference pattern are arranged, and a part of a composite code in which information dots are shown in dark.
  • light and dark reference cells defining a reference pattern are arranged, and a part of a composite code in which information dots are shown in dark. It is a figure which illustrates a part of the grid
  • (A) is a diagram showing cells in 6 ⁇ 6 pixels
  • (b) is a diagram showing cells in 2 ⁇ 2 pixel sections
  • (c) is a diagram showing predetermined areas of FIG. 131 (b) in dark color
  • (D) is a diagram showing the predetermined area of FIG. 131 (b) in a bright color
  • (e) is a diagram showing a specific arrangement example of FIG. 131 (c) and corresponding numerical data
  • (F) is the figure which showed the example of arrangement
  • FIG. 143 It is a figure which illustrates a part of the grid
  • A is a diagram showing cells at 6 ⁇ 6 pixels
  • (b) is a diagram showing cells at 1 ⁇ 2 pixel sections
  • (c) is a diagram showing predetermined areas of FIG. 143 (b) in dark color
  • D is a diagram showing a predetermined area of FIG. 143 (b) in a bright color
  • (e) is a diagram showing an arrangement specific example of FIG. 143 (c) and corresponding numerical data
  • (F) is the figure which showed the example of arrangement
  • (A) is a diagram showing an example in which a predetermined area is 4 ⁇ 4 pixels and there is an air gap between marks
  • (b) is a view showing the predetermined area of (a) in dark
  • (c) is an example of (a)
  • (D) is a diagram showing an example in which the predetermined area is 2 ⁇ 2 pixels and there is an air gap between marks
  • (e) is an illustration showing the predetermined area in (d) in dark.
  • (f) is a figure which showed the predetermined
  • (g) is a figure which shows the predetermined
  • (h) darkens the predetermined area
  • I) is a diagram showing the predetermined area of (g) in a bright color
  • (j) is a diagram in which the predetermined area is 2 ⁇ 2 pixels and the bright area is surrounding the mark arrangement area.
  • K) shows the predetermined area of (j) in dark color
  • (l) shows the predetermined area of (j) in light color
  • FIG. 6 is a diagram in which the mark arrangement region is surrounded by a region of the same color as the predetermined region in two pixels, (n) is a predetermined region of (m) shown in dark, and (o) is a predetermined region of (m) (P) shows an example in which the predetermined area is 4 ⁇ 4 pixels and there are 12 mark candidate positions, and (q) shows the predetermined area of (p) dark. It is a figure which showed, and (r) is a figure which showed the predetermined area of (p) in a bright color, and (s) is a figure which shows an example in which a predetermined area is 2x2 pixels and the arrangement candidate position of a mark is 12 places.
  • (T) is a diagram showing the predetermined region of (s) in dark
  • (u) is a diagram showing the predetermined region of (s) in bright.
  • the structure of the QR code is illustrated in FIG.
  • the QR code includes a position detection pattern (finder pattern), an alignment pattern, a timing pattern, format information, data, and an error correction code.
  • the finder pattern is used to detect clipping, inclination and the like of data.
  • the alignment pattern is used to correct misalignment of each cell caused by distortion.
  • the timing pattern alternates white cells and black cells and is used to determine module coordinates in the symbol.
  • the format information stores information on error correction rates and mask patterns being used.
  • the data and the error correction code are arranged in the area shown by oblique lines in FIG. 1 except the area where the pattern or information described above is arranged.
  • FIG. 2 exemplifies the structure of a QR code including sub-cells obtained by further dividing a part of the information cell.
  • the subdivided sub-cell has a structure in which the cell is divided into four in the horizontal direction and the vertical direction, and one cell is divided into sixteen. Then, by giving dark color to the remaining eight subcells (exemplified by gray in FIG. 2) except the cells at the four corners and the four center cells, for example, in the area of the subcell where the cells are divided into sixteen.
  • the information of 1 bit of light and dark originally is increased to 8 pieces of information in a total of 8 bits.
  • two subcells adjacent to each other as in the subcells SC ⁇ b> 1 and SC ⁇ b> 2 may be integrated into one and the same color region.
  • two dark areas may be in contact at one of the four corners.
  • all of the subcells SC1 to SC8 are in contact with the adjacent cells. Therefore, in the case where the same color as the adjacent cell is designated to any of sub cells SC1 to SC8 (for example, sub cell SCk), the sub cell SCk and the adjacent cell are integrated and the continuous region of the same color is integrated. Can occur.
  • each single dark subcell is The light-colored areas are divided, and the outlines of the dark-colored areas can be easily identified. Therefore, it can be said that the combination of a plurality of dark subcells arranged across at least one light-colored area is less difficult to read even at the limit of read resolution.
  • adding such limitations reduces the number of bits that can be represented.
  • the combination of the arrangement of the sub-cells is theoretically 2,517. Therefore, the amount of information by the subcell in FIG. 2 is 11 bits ⁇ 16 C 4 + 16 C 3 + 16 C 2 + 16 C 1 + 2 ⁇ 12 bits.
  • the information setting sub-cells are limited to eight places SC1 to SC8 in FIG. 2, and data can be recorded by a total of 70 color arrangement patterns.
  • it is made to be able to distinguish a color of an expansion cell certainly with a QR Code reader by such limitation.
  • Embodiment 1 In the present embodiment, an information expression is proposed to improve the problem of the comparative example.
  • information is represented by a composite code defined by a first code exemplified by a QR code and a second code exemplified by a dot pattern in the first code.
  • the QR code is illustrated as the first code, but the first code is not limited to the QR code.
  • the first code may be, for example, a one-dimensional barcode or a code represented by a character string.
  • a code represented by a dot pattern is exemplified as the second code, but the second code is not limited to the code by the dot pattern (also referred to as a dot code).
  • FIG. 3 exemplifies a pattern in which the second code is expressed by dots smaller than the subcell.
  • the cell in which the second code is set is referred to as a specific cell.
  • the dot of the area smaller than a subcell is arrange
  • a dot is an example of a mark.
  • the dots are arranged at the centers of the subcells in FIG. 3, the positions of the dots are not limited to the centers of the subcells. Therefore, in FIG.
  • the size of the cell is 0.250 mm ⁇ 0.250 mm
  • the size of the sixteen divided sub-cells is 0.0625 mm ⁇ 0.0625 mm.
  • the dot is 0.042 mm ⁇ 0.042 mm
  • the outline of the outline due to ink stain etc. during printing It has been empirically found that the displacement is considered to be less than 0.050 mm ⁇ 0.050 mm even in consideration of the displacement. It goes without saying that if printing accuracy is high, it approaches 0.042 mm ⁇ 0.042 mm. When printing with a printer with a higher resolution, for example, a resolution of 1200 dpi, finer printing is possible.
  • the dot pattern of FIG. 3 can be said to be a mark without failure in reading the first code.
  • the feature of the dots of FIG. 3 in comparison to the subcell of FIG. 2 is that there is a bright area between the dots. That is, as in the comparative example, in the case of the subcell of FIG. 2, the same color is set between two adjacent subcells or between the subcell and the adjacent cell, and as a result, the areas of the same color are Be continuous or united. Then, at the limit of the reading resolution, it may be difficult to distinguish between a single subcell and a collection of a plurality of subcells. On the other hand, in the configuration of FIG. 3, the dark dots are clearly divided into bright areas, and the dark dots can be easily identified even at the limit of the reading resolution.
  • FIG. 4 shows another example of the second code.
  • FIG. 4 shows an example in which dots are arranged in 3 rows and 3 columns at the center of an area obtained by dividing a cell into nine. That is, also in the example of FIG. 4, the center of nine subcells is a virtual point. Then, information is expressed depending on whether or not dots are arranged at virtual points.
  • the distance between the dots is further expanded than in the case of FIG. 3, which makes it easy to distinguish dots from dots.
  • the ratio of the dot area to the cell area is 25.12%, which is a value almost similar to the condition of Patent Document 1 above. Further, dots can express information of FIG.
  • the dot pattern in FIG. 4 can be said to be an example of a pattern in which the arrangement in which the marks are in contact with each other is excluded. Moreover, in the dot pattern of FIG. 4, it can be said that the arrangement in which the mark contacts the boundary between the specific cell and the cell adjacent to the specific cell is excluded. Therefore, the dot pattern of FIG. 4 can also be said to be a mark without an obstacle in reading the first code.
  • FIG. 5 shows a modification of FIG. 4 in which the arrangement of dots is three rows, three in the first row, two in the second row, and three dots in the third row.
  • the dots are arranged such that the positions of the dots in the second column in the row direction are between the first and second rows and between the second and third rows. That is, also in the example of FIG.
  • the distance between dots is further expanded than in FIG. 4, and the dot and the dot can be easily distinguished.
  • the ratio of the dot area to the cell area is 25.1%, which is a value almost similar to the condition of Patent Document 1 above.
  • the dot pattern in FIG. 5 can be said to be an example of a pattern in which the arrangement in which the marks are in contact with each other is excluded.
  • the arrangement in which the mark contacts the boundary between the specific cell and the cell adjacent to the specific cell is excluded. Therefore, it can be said that the reading of the first code of the dot pattern in FIG.
  • FIG. 6 shows still another example of the second code.
  • virtual points (X1, Y1) are set in one cell.
  • the virtual points (X1, Y1) are specified by, for example, coordinate values when the lower left point of the cell is the origin (0, 0).
  • the position of the virtual point is not necessarily marked to indicate the virtual point.
  • a mark indicating a reference point may be arranged at the position of the virtual point.
  • information can be defined by arranging dots at a predetermined angle ⁇ , for example, at an interval of 45 degrees on a virtual circle of radius d with the virtual point as a center. In this case, assuming that the distance d is fixed, 3-bit information can be defined around one virtual point if the number of dots is limited to one.
  • the amount of information that can be expressed when using a maximum of eight dots is the same as that in the case of FIG. Therefore, in FIG. 6, it can be said that numerical data is defined by arranging marks based on virtual points.
  • the dot pattern in FIG. 6 can be said to be an example of a pattern in which the arrangement in which the marks are in contact with each other is excluded.
  • the dot pattern of FIG. 6 it can be said that the arrangement in which the mark contacts the boundary between the specific cell and the cell adjacent to the specific cell is excluded.
  • virtual points can be arbitrarily set in the cell. Therefore, it can be said that one or more virtual points are arbitrarily set at the position having coordinate information in the specific cell.
  • the dot pattern in FIG. 6 can be said to be an example in which a part of numerical data is defined by at least one of the direction and the distance in which the mark is arranged starting from the virtual point.
  • the cell or the sub-cell obtained by dividing the cell adopted for the code is darkened instead of being filled.
  • the reading resolution of the reader varies, generally, if the total area of the dots is around 50% of the area of a specific cell, two or more distinguishable colors (white such as QR code etc. In the case of using black and black, it is not preferable because it can not be determined which of the white cell and the black cell). Generally, if 33% or less (one-third), it is determined that the specific cell is the cell. It is more preferable if it is 25% or less.
  • 3 to 6 illustrate the composite code in which the dots whose dark periphery is surrounded by light are arranged, but the same applies to the case where the light dots are arranged in the dark cell.
  • the bright dots are clearly divided in the dark area, and it becomes easy to identify the bright dots even at the limit of the reading resolution.
  • the arrangement position of the second code in the first code will be described using the QR code as the first code with reference to FIGS. 7 to 13.
  • the arrangement position of the second code in the first code means that the information is represented by a combination of dark cells and bright cells, as in the case of the first code being a QR code. Refers to the location of the cell (referred to as a specific cell as described above) for which the second code is defined.
  • setting the QR code as the first code is an example, and the first code is not limited to the QR code.
  • the horizontal right direction is the x direction
  • the vertically downward direction is the y direction
  • data of the QR code (first code) is arranged starting from the lower right. In the present embodiment, data is arranged from right to left based on two cells in the X direction.
  • FIG. 7 shows an example in which the second code is arranged only in bright cells (white cells in the figure) of the data and error correction code arrangement area.
  • the bright cells in which the second code is formed are numbered from 1 to 178.
  • This serial number is a code for identifying the second code according to the arrangement of dots in each cell in the description of this embodiment, and is not a pattern (graphic shape) formed in an actual cell.
  • this serial number can be referred to as unique identification information given to a cell to which the second code is attached, and for example, in information processing in a generator for generating a composite code or a reader for reading a composite code It can be understood as the number used.
  • a second code of dots illustrated in FIGS. 3 to 6 is formed.
  • the shape expressing the second code by the dots in the cell will be referred to as a dot pattern.
  • the number given to each cell can be said to identify the dot pattern in the cell.
  • the second codes are arranged in the same order as the arrangement order of the first codes. That is, among the cells of the QR code, starting from the lower right and side by side two cells in the X direction, first scan the cell on the right and then the cell on the left, Set a second code with dark dots. Examples of the second code are illustrated in FIGS. 3 to 6. However, the second code is not limited to those in FIGS. 3 to 6.
  • the serial number assigned to each cell in FIG. 7 does not specify the type of dot pattern in the cell, but can be understood as information identifying the cell to which the dot pattern is attached.
  • the cell to which the second code is attached can be said to be an example of what is called a specific cell.
  • the identification information given to the brightly colored cells in FIG. 7 will be referred to as a specific cell index.
  • the specific cell index is identification information that is associated one-to-one with the coordinate value of each cell in the above-described scan order. It can be said that numerical data ordered by a specific cell index is formed from a plurality of defined specific cells. Also, it can be said that the second code string is formed by a plurality of specific cells that can be mutually identified by a specific cell index.
  • the composite code generation device scans cells in the same scan order as the first code, for example, the cell scan order of the QR code, and the second code by the dot pattern is set.
  • the compound code reader may scan cells in the same order as the compound code generator and decode information from the second code according to the dot pattern. Therefore, the first code, for example, the composite code generated in the same scan order as the QR code cell scan order, can be read by the reader alone without obtaining information from the generator. This is because the reading device may associate the specific cell index with the coordinates in the same scanning order as that of the generating device.
  • the compound code generation device scans the cells in a scan order different from the first code, for example, the cell scan order of the QR code, and the second code by the dot pattern is set.
  • the reader of the compound code In order for the reader of the compound code to decode the information from the compound code, information that associates the specific cell index with the coordinate value is required.
  • a process example of decoding information from the complex code is illustrated.
  • the information for associating the specific cell index with the coordinate value the case where the specific cell index is directly associated with the coordinate value, and an index serving as a reference to the coordinates of all cells are given. Associating the reference index with each other indirectly associates the specific cell index with the coordinate value.
  • the first code reading and the second code reading are executed in parallel, and the first code reading and the second code reading are separately performed in two steps. There is.
  • the method of executing reading of the first code and reading of the second code in parallel after determining the light color and dark color of one cell forming the first code, the light color and dark color of the next cell are determined.
  • the presence or absence of the dot pattern forming the second code is determined for the cells for which the determination of light color and dark color is completed.
  • decoding of the dot pattern into a numerical value is performed on the cell in which the dot pattern exists.
  • numerical values are integrated in a set of numerical values in which a predetermined number of cells are combined, and the second code is decoded.
  • FIG. 8 is an arrangement example of the composite code in which the second code is arranged also in the white cells around the finder pattern. Also in FIG. 8, as in FIG. 7, two rows of cells (rows of cells in the vertical direction with respect to the paper surface) are paired. Then, in the first two rows, when scanning from the bottom to the top, the bright cells are assigned serial numbers with priority to the right cell among the left and right cells. For example, in the lowermost row of the two rightmost columns, since there are bright cells on the left side, serial numbers 1 are assigned. Also, in the second line from the bottom, since there are only dark cells, serial numbers are not assigned.
  • serial numbers 6 and 7 are given in the cell priority on the right.
  • cells are scanned from the top to the bottom, and for the two cells on the left and right, serial numbers are assigned to bright cells, with cell priority on the right side as well.
  • FIG. 9 shows the case where the second codes are arranged in all white cells including the finder pattern and the alignment pattern described in FIG. Therefore, the bright cells around the finder pattern described in FIG. 1, the bright cells in the timing pattern, and the bright cells in the format information are also cells in which the data of FIGS. Similarly, a second code is placed.
  • FIG. 10 is an example of a composite code in which the second code is placed not only in a bright cell but also in a dark cell.
  • the second code may be disposed not only in the data and error correction code area but also in cells other than the finder pattern and the alignment pattern.
  • the second code may be arranged in all cells (light cells and dark cells) including the finder pattern and the alignment pattern.
  • the dot is bright.
  • FIG. 10 illustrates a configuration in which bright dots are arranged in dark cells of the specific cell index 27 with the same configuration as the configuration illustrated in FIG. 5.
  • FIG. 11 is an arrangement example of a composite code in which the dot pattern of each cell constituting the second code is repeated for a predetermined number of cells.
  • the specific cell index which is the serial number of the cell is repeatedly arranged by the number of 1 to 16.
  • dot patterns corresponding to specific cell indexes 1 to 16 are arranged from right to left with reference to two cells in the X direction.
  • the reader can set the second code from a part of the first code (for example, a predetermined number of cells of the QR code). It is possible to read the code.
  • a portion of the second code grouped by a predetermined number of specific cell indexes (numbers 1 to 16) is called a subcode.
  • the table that associates the number (for example, the numbers 1 to 16) indicating the type of the second code in the cell with the position coordinates of each cell (or the serial number of each cell) is complex.
  • the code may be generated on the generator side and delivered to the reader. However, by predetermining the arrangement rule of the second code, the reader is made to generate a serial number (specific cell index) in the cell to which the second code is set in the same rule as the generator. May be
  • the reading device of the composite code may arrange the values read from the second code in each cell in the order of serial numbers and integrate the numerical values in accordance with the above-mentioned rule.
  • the second code itself in each cell is also matched with the repetition of the serial number (specific cell index).
  • the N for example, 16
  • a dot pattern indicating the beginning of the second code is attached to the top cell, and the end cell is attached
  • a dot pattern indicating the end of the second code For example, of the N (for example, 16) cells to which a specific cell index of 1 to 16 is assigned, a dot pattern indicating the beginning of the second code is attached to the top cell, and the end cell is attached , And a dot pattern indicating the end of the second code.
  • FIG. 12 is an arrangement example of a composite code in which dot patterns constituting a predetermined number of second codes are repeatedly arranged in all bright cells in a QR code which is an example of the first code. That is, FIG. 12 arranges the second codes in all bright cells while adopting the rule of giving the serial number (specific cell index) exemplified in FIG. Therefore, in FIG. 12, as in FIG. 9, the second code can be arranged in all bright cells in the QR code, that is, bright cells such as a finder pattern and an alignment pattern.
  • the reading of the second code may be performed after the reading of the first code is completed. Therefore, when generating and reading the second code of the composite code, cells are scanned downward starting from the upper left origin, and indexes of 1 to 16 are given to bright cells detected during scanning. In the example of FIG. 12, the process of moving the cell coordinates from the minimum value of the X coordinate to the maximum value, moving from the maximum value of the Y coordinate to the minimum value, and moving sequentially from the minimum value to the maximum value is repeated. .
  • the specific cell index is sequentially assigned from the minimum value (1) to the maximum value (16), and then from the maximum value (16) to the minimum value (1).
  • the composite code generation device sets a dot pattern corresponding to the specific cell index to each cell, and generates a composite code.
  • the compound code reader searches for a specific cell in the same procedure as the generator, sets a specific cell index according to the same rule as the generator, determines the order of cells in the complex code, It is sufficient to decode the code of 2.
  • the generation device matches the arrangement order of the first code (the scanning order of the QR code) as described in FIGS. 7 to 10.
  • the second code may be arranged (a specific cell index may be set). Then, the reading device may execute the reading process of the QR code and the reading process of the second code in parallel.
  • FIG. 13 shows an example of a composite code in which dots are arranged in the margin around the QR code.
  • a second code in the quiet zone (the blank part around the QR code).
  • the generating device and the reading device search for a specific cell as the cell moves, and when the specific cell for which the second code is set is found, the minimum value of the specific cell index (1 ) In the range of maximum value (16).
  • FIG. 14 is an arrangement example of a dot pattern in which information is defined by the distance from the virtual point and the direction.
  • the dot pattern that defines the information by the distance and direction from the virtual point is the dot pattern illustrated in FIG.
  • the second code sets a virtual point in the cell, and defines information in at least one of the distance d from the virtual point to the dot and the direction of the straight line from the virtual point to the dot.
  • the position of the virtual point is set relative to the origin of the cell.
  • the origin of the cell may be, for example, the lower left point of the cell, but the definition of the origin of the cell is not limited.
  • FIG. 14 exemplifies the case where the distance d is a fixed value. However, information may be defined by taking a plurality of values as the distance d. Further, in FIG. 14, dots are arranged in units of 45 degrees around the virtual point (distance d), and numerical data 000 to 111 are defined.
  • the direction of the cell is determined by the shape portion to be a reference in the first code, for example, the finder pattern of the QR code (see FIG. 1). Therefore, the direction in which the dot in the cell is arranged with respect to the virtual point is set based on the coordinate axis determined by the finder pattern. For example, in each cell of FIG. 14, when the axis in the rightward direction from the virtual point is a reference of the direction, the numerical value 000 corresponds to the direction of 90 degrees. Further, the numerical value 001 to the numerical value 111 correspond to the direction of rotational movement in 45 degree units clockwise from the direction of the numerical value 000 (for example, from 90 degrees in the direction).
  • the generating device for generating the composite code sets a virtual point in the cell, forms a dot at a position determined by the distance and direction corresponding to the numerical data, and performs printing by a printing machine or electronic medium / broadcast medium / storage It is sufficient to output from the medium / communication medium to the screen.
  • the reader for reading the composite code sets the virtual point and direction in the cell based on the reference shape portion in the first code, and the distance and direction from the virtual point to the dot detected in the cell To recognize the numerical value from the dot pattern.
  • FIG. 15 is an example in which information is defined depending on whether a dot is placed on a virtual point or not.
  • the dot pattern that defines information depending on whether a dot is placed on a virtual point or not is, for example, the dot pattern illustrated in FIG. 3 to FIG.
  • the generating device for generating the composite code sets a virtual point in the cell, forms a dot on the virtual point corresponding to the numerical data, or forms an image without a dot, printing by a printer, or electronic It is sufficient to output from the medium, broadcast medium, storage medium, and communication medium to the screen.
  • the reading device for reading the composite code sets virtual points in the cell based on the shape portion serving as a reference in the first code, recognizes the presence or absence of dots at each virtual point, and obtains numerical values from the dot pattern. You just need to decode
  • the composite code may be stored on a storage medium, which the program may decrypt. That is, complex code can be generated and decoded in virtual space.
  • FIG. 16 is a setting example of virtual points in the second code illustrated in FIG.
  • dark dots when dark dots are to be placed in bright cells, by placing dots at up to eight of nine virtual points, it is possible as a whole cell. , Determined as bright cells, and dark dots can be placed at virtual points.
  • FIG. 17 is a setting example of virtual points in the second code illustrated in FIG.
  • the row positions of two virtual points in the center column are the row positions of three virtual points in the first column and three virtual points in the third column. It is arranged to be in the middle position of
  • FIG. 18 is a modification of the virtual point position.
  • the virtual point position is not limited to FIGS. 16 and 17, and various virtual points can be used.
  • the virtual point position may be one or two or more in the cell.
  • virtual point positions may be provided at diagonal positions from the center of the cell and the center of the cell to the four corners of the cell.
  • the virtual points may be provided at positions near two diagonal corners on one diagonal from the center of the cell.
  • three virtual points are provided in a cell, one of the virtual points is on one of the two sides of the opposing cell on the line connecting the center of the cell from the middle point on one side to the center of the cell.
  • the remaining two virtual points may be provided at positions close to each other and at positions close to both ends of the side opposite to the one side (two corners formed by the sides orthogonal to the opposite side).
  • FIG. 19 is an example of a dot pattern in a cell which clearly indicates that information by dot pattern is not set. For example, when a plurality of virtual points are provided in a cell, when dots are arranged at a virtual point at the center of the cell, it may mean that the information is undefined.
  • FIG. 20 is an example of a second code according to a line segment in which the tip of the line segment is located at a virtual point. That is, instead of arranging dots around virtual points as shown in FIG. 14 and defining information in terms of distance and direction, line segments are arranged around virtual points as shown in FIG. Information may be defined by direction.
  • a line segment is an example of a mark.
  • the pattern of the line segment of FIG. 20 can be said to be an example of the pattern from which the arrangement in which the marks are in contact is excluded.
  • the pattern of the line segment in FIG. 20 it can be said that the arrangement in which the mark contacts the boundary between the specific cell and the cell adjacent to the specific cell is excluded.
  • part of numerical data can be defined by at least one of the direction and the length of a line segment.
  • FIG. 21 is an example of a second code according to a line segment in which the center of the line segment is positioned at a virtual point. Also in FIG. 21, part of numerical data can be defined by at least one of the direction and the length of the line segment. Furthermore, in FIG. 22, the length of the line segment is changed to a plurality of levels, and the length of the line segment is one element defining information. In the case of arranging a line segment as the second code, the position of the virtual point is not limited to the center of the line segment. For example, FIG.
  • part of numerical data can be defined by the direction and / or the length of the line segment. Further, in FIGS. 20 to 23, it can be said that a part of numerical data is defined by arranging any position in a line segment on a virtual point.
  • FIGS. 14 to 23 it can be said that one or more virtual points are arbitrarily set at the position having the coordinate information in the specific cell.
  • numerical data is defined by arranging marks based on virtual points.
  • the mark is defined by the bright area and the dark area in FIG. 14 to FIG. 23 above, for example, the mark may be defined by any two of R (red), G (green) and B (blue). It may be defined. Therefore, in FIGS. 14 to 23, an example of a composite code in which a part of numerical data is defined by at least one of the shape, color, mark arrangement method based on virtual points, and presence or absence of arrangement in FIGS. It can be said.
  • the second code is defined by dots or line segments.
  • the shape of the mark may be any polygon or substantially circular.
  • FIG. 24 is a diagram showing a configuration example (1) of a composite code in which a dot pattern is arranged in a cell of a QR code as an example of the first code.
  • a dot pattern in which information is defined by the distance and the direction from the virtual point is exemplified.
  • the dot pattern which defines information by the distance and direction from the virtual point is as described in FIG.
  • a dark area filled with a hatching pattern and a bright area without a hatching pattern are formed in the part of the QR code.
  • a virtual point is illustrated with a plus ("+") mark substantially near the center in the bright area.
  • marks such as plus ("+) are described to illustrate the positions of virtual points in the drawing, and marks such as plus ("+") are not drawn in an actual composite code.
  • one dot is illustrated in each bright area at approximately 45 degrees.
  • FIG. 25 is a diagram illustrating a configuration example (2) of a composite code in which a dot pattern is disposed in a cell of a QR code as an example of the first code.
  • a plurality of virtual points are provided in a bright area, and information is defined depending on whether or not the virtual points are on the virtual points.
  • four virtual points are provided in one bright color area in FIG. 25, the virtual points are not limited to four in this embodiment.
  • FIG. 26 is a diagram showing a configuration example (3) of a composite code in which a dot pattern is arranged in a cell of a QR code as an example of the first code.
  • the configuration example (3) as an example of the second code, a plurality of virtual points are provided in a bright area, and information is defined depending on whether or not the virtual points are on the virtual points.
  • one dot is arranged in each bright area, but in FIG. 26, three dots from zero are provided in one bright area.
  • FIG. 27 is a diagram illustrating a configuration example (4) of a composite code in which a dot pattern is arranged in a cell of a QR code as an example of the first code.
  • the number of virtual points and the arrangement method of dots differ depending on the specific cell in which the dot pattern is defined. That is, depending on the position of the specific cell, the number of virtual points, the arrangement position of the virtual points, and the method of arranging the dots with respect to the virtual points may be different.
  • the arrangement of dots with respect to virtual points includes, for example, the arrangement of dot patterns that define information by the distance and direction from the virtual points as shown in FIG. 24, and the arrangement of dots with respect to virtual points as shown in FIGS.
  • the arrangement of the dot pattern that defines the information depending on whether or not there is exemplified.
  • the number of dots in one bright area may be one or more.
  • the second code may be defined in common for each cell position between the generator for generating the composite code and the reader for acquiring information from the composite code. Further, for example, information for specifying how to define the second code may be incorporated in the format information illustrated in FIG.
  • FIG. 28 is a diagram illustrating a configuration example (5) of a composite code in which a dot pattern is disposed in a cell of a QR code as an example of the second code.
  • information is defined by placing bright dots in a dark area as an example of the second code.
  • FIG. 28 illustrates a dot pattern in which light and dark colors are switched with respect to a dot pattern illustrated in FIG. 26 in which dark dots are arranged in a light area.
  • FIG. 29 is a diagram showing a configuration example (6) of a composite code in which a dot pattern is arranged in a cell of a QR code as an example of the second code.
  • information is defined by arranging a line segment in a bright area.
  • the tip of the line segment is positioned at a virtual point, and the line segment is arranged.
  • FIG. 30 is a diagram illustrating a configuration example (7) of a composite code in which a line segment pattern is arranged in a cell of a QR code as an example of the second code.
  • line segments are arranged in a different arrangement manner depending on the specific cell in which the second code is arranged. For example, a line segment whose tip is a virtual point, a line segment whose center is a virtual point, and the length of a line segment is changed to a plurality of levels, and the length of a line segment defines information. It is possible to adopt a component that becomes an element, a segment where the position at which the segment is internally divided at a predetermined ratio is a virtual point, and the like.
  • FIG. 31 is a diagram illustrating a configuration example (8) of a composite code in which a line segment pattern is arranged in a cell of a QR code as an example of the second code.
  • a line segment pattern or a dot pattern is selected and arranged as an example of the second code for each specific cell in which the second code is arranged.
  • the way of arranging the line segment pattern and the way of arranging the dot pattern are specified for each specific cell.
  • the way of arranging the second code may be common to the generator for generating the complex code and the reader for reading the complex code.
  • a second code (FIG. 24, etc.) defined in a bright area and a second code (FIG. 28) defined in a dark area May be combined to form a composite code.
  • FIG. 32 is a diagram illustrating the configuration of an information system for providing a service by a composite code.
  • a management server MS1, content servers CS1 and CS2, and a user device UD1 are connected by a network N1.
  • this information system may have a user device UD2 not connected to the network N1.
  • the management server MS1 has a composite code generation unit CGM and a composite code analysis unit CAM.
  • the composite code generation means CGM converts the input digital data into a composite code.
  • the management server MS1 receives digital data from the content server CS1 through the network N1, generates composite code image data by the composite code generation unit CGM, and returns it to the content server CS1.
  • the composite code analysis means CAM analyzes the input composite code and converts it into the original digital data.
  • the management server MS1 receives the image of the composite code from the user device UD1 through the network N1, generates the original digital data by the composite code analysis means CAM, and returns the digital data to the user device UD1.
  • the content server CS1 has communication means CMS1 and composite code output means COUT1.
  • the content server CS1 provides various contents or services to the user devices UD1, UD2, and the like.
  • the content provided by the content server CS1 is provided to the user device through, for example, a broadcasting system or an electronic information communication system, which is a communication medium. Examples of the content include those including images (still images or moving images).
  • the broadcast medium is, for example, a television broadcast or the like, and is a medium for distributing content by electromagnetic waves or the like.
  • the communication medium is, for example, the Internet etc., and is a medium for distributing contents by a wired or wireless network.
  • the content server CS1 can also provide content to the user devices UD1, UD2, etc., via recording media such as CD, DVD, Blu-ray Disc, USB memory, etc. Furthermore, the content server CS1 can also provide the content to the user devices UD1, UD2, etc. via the print medium.
  • the printing medium include those capable of forming an image with ink such as paper and the surface of an object.
  • the content server CS1 transfers digital data related to the content to be provided to the management server MS1 through the network N1 and converts it into a composite code. Then, the content server CS1 acquires the composite data converted by the management server MS1 through the network N1 and provides the composite data together with the content to the user devices UD1, UD2, and the like.
  • the digital data related to the content is various character information related to the provided content, a URL related to the provided content, identification information related to the provided content, or authentication information for access. .
  • the content server CS2 has a composite code generation unit CG2 in addition to the communication unit CMS2 and the composite code output unit COUT2. Therefore, the content server CS2 can convert digital data related to the content to be provided into a composite code by the composite code generation means CG2. Therefore, the content server CS2 does not have to transfer the digital data to the management server MS1 and convert it into a composite code.
  • the functions of the communication unit CMS2 and the composite code output unit COUT2 are the same as those of the communication unit CMS1 and the composite code output unit COUT1 of the content server CS1 described above.
  • the content servers CS1 and CS2 may be, for example, an information processing apparatus cooperating with a broadcasting apparatus of a broadcasting station, a server providing contents over the Internet, a printing company in other companies such as a printing company, etc. Can be exemplified.
  • the user device UD1 has a communication unit CMU1 and an image input unit IIN1.
  • the image input means IIN 1 may be a television screen as a broadcast medium, a screen including graphic objects on web content as a communication medium, a screen including graphics objects output from a recording medium, or a printed material formed on a print medium
  • Image input means for inputting an image from The image input means may be, for example, a scanner or a camera having an imaging device such as Charge Coupled Devices (charge coupled device, CCD), a metal-oxide-semiconductor (MOS) image sensor, a complementary metal-oxide-semiconductor (CMOS) image sensor, etc. Etc.
  • CCD Charge Coupled Devices
  • MOS metal-oxide-semiconductor
  • CMOS complementary metal-oxide-semiconductor
  • the user device UD1 transfers the input image itself or the composite code portion in the input image to the management server MS1 through the network N1 and restores the digital data encoded by the composite code. Then, the user device UD1 executes processing corresponding to digital data based on the obtained digital data and the content provided from the content server CS1, CS2 or the like.
  • the processing corresponding to digital data includes, for example, determination of validity of the content based on digital data, determination of accessibility of the content, modification of a method of providing the content to the user, and other items related to the content. Provision of content etc.
  • the user device UD2 has a composite code analysis means CA2 in addition to the image input means IIN2.
  • the user device UD2 uses the composite code analysis means CA2 to restore digital data encoded in composite code from the input image. Therefore, the user device UD2 does not need to transfer the input image and the composite code portion in the input image to the management server MS1, and restore the digital data. Then, the user device UD2 executes a process corresponding to digital data based on the obtained digital data and the content provided from the content server CS1, CS2 or the like.
  • a personal computer, a tablet terminal, a smart phone etc. can be illustrated as user apparatus UD1 and UD2.
  • FIG. 33 is a diagram illustrating the hardware configuration of the information processing apparatus 10.
  • the information processing apparatus 10 is applicable to the management server MS1, the content servers CS1 and CS2, and the user devices UD1 and UD2 of the present embodiment.
  • the information processing apparatus 10 includes a CPU 11, a main storage device 12, and an external device, and executes information processing according to a program.
  • the CPU 11 is also referred to as a processor.
  • As the external device an external storage device 13, a display device 14, an operation unit 15, a communication interface 16, an image input interface 17, and an image output interface 18 can be exemplified.
  • the CPU 11 executes a computer program expanded on the main storage unit 12 so as to be executable, and provides the function of the information processing apparatus 10.
  • the main storage unit 12 stores computer programs executed by the CPU 11, data processed by the CPU 11, and the like.
  • the main storage device 12 is a dynamic random access memory (DRAM), a static random access memory (SRAM), a read only memory (ROM) or the like.
  • the external storage device 13 is used, for example, as a storage area for assisting the main storage device 12, and stores a computer program executed by the CPU 11, data processed by the CPU 11, and the like.
  • the external storage device 13 is a hard disk drive, a solid state disk (SSD), or the like.
  • the information processing apparatus 10 may be provided with a drive device for a removable storage medium.
  • the removable storage medium is, for example, a Blu-ray disc, a Digital Versatile Disk (DVD), a Compact Disc (CD), a flash memory card or the like.
  • the display device 14 is, for example, a liquid crystal display, an electroluminescence panel or the like.
  • the operation unit 15 is, for example, a keyboard, a pointing device, or the like. In the present embodiment, a mouse is exemplified as the pointing device.
  • the communication interface 16 exchanges data with other devices on the network N1. For example, the CPU 11 communicates with other devices on the network N1 through the communication interface 16. Also, the communication interface 16 may be connected to a broadcast device.
  • the broadcast device converts, for example, digital data from a baseband signal to a high frequency signal, and transmits the converted high frequency as a broadcast wave via a high frequency amplifier and an antenna.
  • a camera, a scanner or the like is connected to the image input interface 17 and acquires image data from various media.
  • the various media include a screen of a television receiver, a display of a computer, a printed material such as a book, a visible pattern formed on the surface of an object, and the like.
  • a printing device, a printer, and the like are connected to the image output interface 18 and output image data to a print medium.
  • the information processing apparatus 10 may have a camera, a scanner or the like connected via the image input interface 17. Further, the information processing apparatus 10 may have a printing apparatus, a printer, and the like connected via the image output interface 18.
  • the image input interface 17 and the image output interface 18 may be omitted. Further, when the information processing apparatus 10 is applied to the content servers CS1 and CS2, the image input interface 17 may be omitted. Furthermore, when the information processing apparatus 10 is applied to a user apparatus, the image output interface 18 may not be necessary.
  • the content servers CS1 and CS2 will be collectively referred to simply as the content server CS. That is, any of the content servers CS1 and CS2 may execute the following processing.
  • the user devices UD1 and UD2 will be collectively referred to simply as the user device UD. That is, any of the user devices UD1 and UD2 may execute the following processing.
  • FIG. 34 is a flowchart illustrating a compound code generation process A by the content server CS.
  • the compound code generation process A is to distinguish it from the compound code generation process B in FIG. 34 and 38, the content server CS can be said to execute processing as a compound code generation device.
  • the content server CS generates shape information of the first code (S11). For example, if the first code is a QR code, the content server CS determines the arrangement of bright cells and dark cells in the QR code.
  • the content server CS inputs digital data to be converted into a second code (S12).
  • Digital data is, for example, information related to content provided by the content server CS.
  • Digital data is input from, for example, a storage device associated with the content provided by the content server CS.
  • the content server CS binary-codes the digital data (S13). That is, the content server CS converts digital data into a binary one-dimensional bit string. Then, the content server CS divides the binary-coded data into data for each cell of the first code (S14). That is, the content server CS divides the binary-coded data by the maximum number of bits that can be expressed by the dot pattern in each cell. Then, the content server CS allocates the divided data to the cells in which the second code can be placed, according to a predetermined rule.
  • a cell in which the second code can be placed is, for example, a bright code when the first code is defined by a combination of a bright cell and a dark cell, and a dark code defines the second code.
  • Cell of the cell in which the second code can be placed is, for example, the first code is defined by a combination of a bright cell and a dark cell, and when the second code is defined by a bright dot. , Dark cell.
  • the content server CS determines cells to which the second code is to be assigned and the assignment order according to predetermined rules such as FIG. 7 and FIG. 8 to FIG. 13, for example. Note that, as already illustrated in FIG. 11, the content server CS may assign a cell by repeatedly forming the plurality of specific cells forming the second code a plurality of times.
  • the content server CS generates shape information of the second code (S15). That is, in the process of S14, the content server CS converts the binary encoded data divided for each cell into image data to be encoded based on the virtual point in the cell.
  • the image data to be encoded on the basis of virtual points in the cell are, for example, those illustrated in FIG. 3 to FIG.
  • the content server CS outputs the image data (S16).
  • the output destination is, for example, a print medium by a printer or the like, an output to the display device of the user apparatus UD by electronic information distribution via the network N1, a distribution via a broadcast medium, or the like.
  • the content server CS that executes the processing of S11 and the processing of S16 can be said to have an example of a first generation unit that generates a first code. Further, it can be said that the content server CS that executes the processing of S12 to S16 has an example of the second generation unit. Therefore, the content server CS can be said to exclude the arrangement in which the marks are in contact with each other when a plurality of marks are arranged in the specific cell as the second generation means. In addition, it can be said that the content server CS excludes, as a second generation unit, an arrangement in contact with the boundary between a specific cell and a cell adjacent to the specific cell.
  • the content server CS1 may output the image data generated by the management server MS1 to a printer, a user device UD on a network, or a broadcast medium.
  • FIG. 35 is a flowchart illustrating a compound code reading process A by the user device UD.
  • the compound code reading process A is to be distinguished from the compound code reading process B of FIG.
  • the user device executes the process as the compound code reader.
  • the user device UD inputs an image of a composite code input from a scanner, a camera or the like via the image input interface 17, and recognizes the format and the arrangement of cells of the first code ((1) S20). For example, the user device UD recognizes the direction of the QR code by the finder pattern, and corrects the distortion of the image by the alignment pattern.
  • the user device UD recognizes the arrangement interval of cells by the timing pattern, and specifies the arrangement position of the data of the QR code and the error correction code.
  • the user apparatus UD subsequently processes the composite code in the arrangement order of the first code for each cell. For example, the user device UD sequentially processes cells in the rightmost two columns in a direction from the cell at the lower right corner of the QR code, and when processing for two columns is completed, for the cells in the third and fourth columns, Process sequentially from top to bottom. Thereafter, data cells and error correction code cells are similarly processed in two columns. The processing for each cell will be described below.
  • the user device UD acquires the image of the next cell, analyzes the first code, and determines light and dark (S21). Next, the user device UD determines whether the second code is defined in the cell under processing (S22). For example, the user device UD recognizes how to arrange virtual points and how to arrange dots relative to virtual points from the information in the format acquired in S20, and determines whether there is at least one dot at the corresponding position. judge. Then, if the second code is defined in the cell, the second code in the cell is analyzed (S23). The second code may be defined in a bright cell. Also, the second code may be one defined in a dark cell as shown in FIG.
  • the user device UD determines whether or not the next cell remains unprocessed (S24). If the next cell is not processed, the user equipment UD returns the process to S21. On the other hand, if all cells have been processed and there is no next cell, the user apparatus UD generates information in which the first code is integrated for each character from the bit string obtained by the first code light / dark determination. (S25). For example, the user device UD separates the bit string obtained from the light / dark determination into characters, and generates digital data (S25). It can be said that the user device UD which executes the processing of S20, S21 and S25 has a first acquisition means for acquiring numerical data from the first code.
  • the user device UD restores digital data based on the bit string obtained from the second code (S26).
  • the second code is configured by a combination of a predetermined number (for example, 16) of cells as shown in FIG. 11, the bit strings of dot patterns from the first cell to the predetermined number of cells are integrated. And restore the digital data.
  • the user device UD that executes the processing of S23 and the processing of S26 has a second acquisition unit that acquires numerical data from the second code.
  • the user device UD determines the combination order of the second code in accordance with the same rule as the rule in which the data divided by the content server CS is allocated to the cell to which the second code can be placed in S14. Do.
  • the user equipment UD which executes the process of S26 has an example of means for generating a specific cell index for ordering specific cells. Therefore, for example, as illustrated in FIG. 11, the user apparatus UD may form a specific cell index by sequentially ordering a plurality of specific cells forming the second code a plurality of times.
  • the user device UD executes information processing corresponding to the digital data restored from the first code and the second code (S27).
  • the user device UD performs processing such as displaying, reproducing, outputting, processing, or adding data related to content in accordance with the restored digital data.
  • the information processing executed in the process of S27 is not limited.
  • the composite code is transferred from the user device UD1 to the management server MS1, and the processing of S20 to S26 is executed by the management server MS1.
  • the user apparatus UD1 may obtain the result of the management server MS1 and execute the process of S27.
  • FIG. 36 is a flowchart illustrating the details of the analysis process (S23 in FIG. 35) of the second code in the cell.
  • the following process is described as being performed by the user device UD.
  • the user device UD when the user device UD is the user device UD1, the following processing is executed by the management server MS1.
  • the user device UD specifies a virtual point with respect to the cell origin (S230).
  • S230 since the process of S230 is repeatedly performed, it is described in FIG. 36 as a "next virtual point.”
  • the user device UD estimates the next dot position with respect to the virtual point (S231). For example, as illustrated in FIG. 6, in the case where the dot positions are arranged at different distances and directions from the virtual point, the arrangement positions are sequentially estimated. On the other hand, as shown in FIG. 3 to FIG. 5, when the dot is placed on the virtual point, the virtual point is the position estimated as it is.
  • the user device UD scans the pixel at the dot position by a predetermined number of pixels, and calculates the ratio VP n / VP 0 of the pixel values (S232). Then, it is determined whether the ratio VP n / VP 0 is less than or equal to a reference value (S233).
  • the pixel means an array element of the image memory when the image acquired by the scan or the camera is stored in the image memory.
  • VP 0 is a pixel value of a position estimated as the dot center.
  • VPn is a pixel value at a position n pixels away from the dot center.
  • the ratio of the pixel value at the position n pixels away from the dot center to the pixel value at the position estimated as the dot center is sufficiently small. Therefore, when the ratio VP n / VP 0 is less than or equal to the reference value, the user apparatus UD determines that the reference value for estimating the presence of a dot is satisfied.
  • the user device UD records the presence of dots (S234).
  • the ratio does not satisfy the reference value for estimating the presence of dots, that is, if the ratio VP n / VP 0 does not become less than or equal to the reference value, the user device UD records no dot (S235).
  • the user device UD determines whether or not processing of all dot positions for virtual points has ended (S236). If processing of all dot positions for the virtual point has not been completed, the user device UD returns the process to S230 and estimates the next dot position for the same virtual point. In addition, when a dot is arrange
  • the user device UD determines whether processing of all virtual points is completed (S237). Then, when the processing of all the virtual points has not ended, the user device UD returns the processing to S230 and executes the processing of the next virtual point.
  • the user device UD determines the numerical value of the dot pattern in the cell corresponding to the dot position (S238). That is, the user device UD determines a numerical value to be restored from the arrangement of dots. Then, the user device UD stores the numerical value of the dot pattern in the cell and the identification information of the cell (S238).
  • the cell identification information may be a serial number assigned to the cell. Further, the identification information of the cell may be, for example, arrangement coordinates of the cell in the QR code. The identification information of the cell may be a specific cell index from 1 to a predetermined number (for example, 16) repeatedly set in the example of FIG. Also, the user device UD may combine and store the numerical value of the dot pattern in the cell, the identification information of the cell, and the specific cell index.
  • a composite code in which the second code by the dot pattern is defined is adopted in the cell of the first code exemplified by the QR code.
  • the content server CS generates a composite code, applies the composite code to various media such as a broadcast medium, a communication medium, a storage medium, and a print medium, and distributes the composite code.
  • the composite code dark dots are used in bright cells. In such a configuration, dots and dots are separated in bright areas in the cell. Also, dots in cells are separated from adjacent cells in bright areas.
  • the user device UD which is a reader, can recognize the second code clearly. As a result, it is possible to increase the amount of information by the first code and to perform stable decoding. For example, if the second code is in the form of FIG. 5, 256 bits of information of 8 bits can be defined in one cell.
  • the composite code analysis unit CA2 of the user device UD2 or the composite code analysis unit CAM of the management server MS1 is a position where the presence of a dot in the image acquired from the image input unit IIN1 or IIN2 is estimated
  • the ratio between the pixel value VP 0 at a position estimated to be the dot center and the pixel value VP n at a position separated by a predetermined number of pixels (n pixels) from the position estimated to be the dot center satisfies a predetermined condition.
  • the presence or absence of the dot was determined according to whether or not it was.
  • the pixel at the position estimated to be the dot center is calculated by calculating the ratio of pixel values. Even if background variation occurs in a pixel located a predetermined number of pixels (n pixels) away from the position estimated to be the dot center, the boundary between the bright area and the dark area can be accurately determined.
  • the composite code can be analyzed by at least one of the composite code analysis means CA2 of the user device UD2 and the composite code analysis means CAM of the management server MS1, and the numerical value can be restored from the second code. Therefore, the user device UD1 having the image input unit IIN1 and the communication unit CMU1 without the analysis unit CA2 as in the user device UD1 can communicate with the management server MS1 easily, with a light load, and use the service by the composite code Can be provided to the user.
  • the reading order of the second code is the reading order of the cells of the first code.
  • the reading order of the cells in which the second code is set may be different from the reading order of the cells in the first code.
  • the composite code generation means CGM for generating composite code and CG2 splits a binary-encoded bit string into data for each cell (S14 in FIG. 34).
  • the reading order of the cells for which is set may be different from the first code, and the reading order may be stored.
  • the reading order can manage the reading order number SEQ (k) of the cell in correspondence with the center coordinates (X i , Y j ) of the cell.
  • the complex code generation means CGM of the management server MS1 which generates the complex code, or the complex code generation means CG2 of the content server CS2 is the central position coordinates of the cell and the number SEQ (k) of reading order of the cell in which the second code is set. (X i , Y j ) may be associated and stored, and may be delivered to user devices UD1 and UD2 that read the composite code.
  • a serial number ID (n) as a reference is assigned to all cells based on a predetermined standard, and a second code is set with a serial number ID (n) which is identification information assigned to all cells. It can be managed as a relationship with the number SEQ (k) of the cell reading order.
  • the composite code generation means CGM of the management server MS1 that generates composite codes or the composite code generation means CG of the content server CS2 associates the cell reading order number SEQ (k) with the serial number ID (n) for each cell After that, it may be stored and handed over to the user devices UD1 and UD2 which read the composite code.
  • the relationship between the serial number ID (n) of each cell and the center coordinates (X i , Y j ) of each cell is determined in advance by a rule.
  • the number SEQ (k) of the cell reading order is also referred to as a specific cell index.
  • the relationship between the ID (n) and the reading order number SEQ (k) of the cell in which the second code is set is referred to as cell reading order information.
  • FIG. 37 illustrates the configuration of the information system according to the second embodiment.
  • a management server MS3, a content server CS3, and a user device UD3 are connected by a net network N1.
  • the management server MS3 has a composite code generation unit CGM and a specific cell index setting unit CIGM.
  • the compound code generation means CGM generates a compound code
  • the specific cell index setting means CIGM generates cell reading order information and stores it in the cell reading order information file CIM.
  • the content server CS3 has a specific cell index setting means CIGS.
  • the content server CS3 When generating the composite code, the content server CS3 generates cell reading order information by the specific cell index setting means CIGS, and stores it in the cell reading order information file CIS.
  • the present information system may have the content server CS1 of the first embodiment.
  • the content server CS1 requests the management server MS3 to generate a composite code instead of generating the composite code by itself. Therefore, cell read order information corresponding to the generated composite code is stored in the cell read order information file CIM of the management server MS3.
  • the communication unit CMS3 and the composite code output unit COUT3 are the same as the communication unit CMS2 and the composite code output unit COUT2 of the first embodiment, and thus the description thereof will be omitted.
  • the user apparatus UD3 acquires cell order read information from the management server MS3 or the content server CS3 via the network N1 and holds the information.
  • the composite code analysis means CA3 of the user device UD3 restores digital data from the second code by integrating the numerical values by the dot pattern set in each cell according to the cell order read information.
  • the image input unit IIN3 and the communication unit CMU3 are the same as the image input unit IIN1 and IIN2 in the first embodiment, the communication unit CMU1 and the like, and the description thereof will be omitted.
  • FIG. 38 is a flowchart illustrating a compound code generation process B by the content server CS3 or the management server MS3. This process is different from FIG. 32 in that the content server CS3 stores cell reading order information in the process of S14A. The other procedures are the same as in the first embodiment, and thus the description thereof is omitted.
  • the content server CS3 that executes the processing of S12 to S15 can be said to have a second generation unit that generates a second code.
  • FIG. 39 is a flowchart illustrating a compound code reading process B by the user device UD.
  • This process is different from FIG. 35 in that the user apparatus UD3 executes the processes of S25A and S26A. That is, the user apparatus UD3 refers to the cell reading order information from the cell reading order information file CIU (S25A). Then, the user device UD3 integrates the numerical values specified by the dot pattern in each cell according to the cell reading order information, and restores the digital data by the second code (S26A).
  • the user device UD3 requests the content server CS3 or the management server MS3 to generate cell reading order information instead of referring to the cell reading order information from the cell reading order information file CIU, and the generated cell reading order is generated. Information may be referred to.
  • the user apparatus UD which executes the processing of S22, S23, S25A and S26A has a second acquisition unit. Further, it can be said that the user apparatus UD3 executing the process of S25A has a means for acquiring the specific cell index from the server generating the specific cell index for ordering the specific cell or the server storing the specific cell index. Also, the content server CS3 or the management server MS3 can be said to be an example of a server that generates a specific cell index that orders specific cells or a server that stores a specific cell index
  • the user apparatus UD3 may acquire cell reading order information from the management server MS3 when executing the process of S26A, or before the compound code reading process of FIG. Cell reading order information may be obtained and stored in the cell reading order information file CIU.
  • the content server CS3 generating the composite code or the management server MS3 reads the cell reading sequence number SEQ (k), which is a specific cell index, and the center coordinates (X i , Y of the cell).
  • the relation with j ) or the relation between the number SEQ (k) of the cell reading order and the serial number ID (n) of each cell is stored in the cell reading order information file CIS, CIM or the like.
  • the cell reading order information stored in the cell reading order information file CIS, CIM, etc. is handed over to the user apparatus UD3, referred to at the time of decoding of the composite code, and the numerical values for each cell set in the form of dot pattern are integrated.
  • the second code is restored to the original digital data. Therefore, according to the information system of the second embodiment, the dot pattern forming the second code can be set and restored in each cell in the reading order not dependent on the reading order of the first code, for example, the QR code.
  • Such reading order may be determined in advance by rules, for example, information specifying the reading order rule in the format information illustrated in FIG. 1 or the data (text) of the first code. You may embed it.
  • the second code can be set in various manners.
  • the presence or absence of the dot pattern in each cell is determined, and the second code is decoded.
  • only decoding of the first code may be executed first, and then each cell may be scanned a second time to recover digital data from the second code.
  • the processing in the case where the reading order of the cells of the first code and the cell reading order of the second code are different is illustrated.
  • the first code is a QR code
  • the reading order of the data and the error correction code illustrated in FIG. 1 and the reading order of the cell in which the second code is encoded by the dot pattern are Even in the same case, when the dot pattern (or the line segment pattern or the like) of the second code is set in the format area, the finder pattern, the timing pattern, or the quiet zone illustrated in FIG.
  • the reading order of the code is different from the reading order of the cells of the first code. Therefore, depending on the cell in which the dot pattern (or the line segment pattern or the like) forming the second code is set, it is impossible to determine the presence or absence of the dot pattern in each cell in parallel with the reading of the first code cell. In some cases.
  • Embodiment 1 and Embodiment 2 are applied as Embodiment 3, and the description is abbreviate
  • components of Embodiment 1 and Embodiment 2 will be cited as necessary.
  • the reading order of the second code is different from the reading order of the cells of the first code, and the cell reading order number SEQ (k) and the cell center coordinates (X i , Y j ) or the relationship between the cell reading order number SEQ (k) and the serial number ID (n) for each cell is stored in the cell reading order information file CIS, CIM, etc. so that it can be referred to during decoding did.
  • the cell reading order information may be referred to from the user apparatus UD3 on the reading side, or the cell reading order information may not be delivered to the user apparatus UD3 on the reading side. May be
  • the process of dividing a binary-coded bit string into data for each cell specifies the order of cells to which the divided bit strings are allocated. Shall be determined in accordance with the rules of Then, when analyzing the composite code, cell numerical values in which dot patterns forming the second code are set may be integrated according to the same rule. Therefore, even if the reading order of the second code is different from the reading order of the cells of the first code, the cell reading order information is not necessarily required.
  • FIG. 40 is a flowchart illustrating a reading process of the composite code in the third embodiment.
  • the process of FIG. 40 is different from that of FIG. 39 of the second embodiment in S20C and S21C. That is, for example, the user device UD3 first executes analysis of all cells of the first code (S20C).
  • the management server MS3 to which the composite code is delivered from the user device UD3 may execute the following process.
  • the user device UD3 or the like inputs the image of the composite code input from the scanner or camera via the image input interface 17, and the format and the arrangement of the first code cells recognize. For example, the user device UD recognizes the direction of the QR code by the finder pattern, and corrects the distortion of the image by the alignment pattern. Also, the user device UD recognizes the arrangement interval of cells by the timing pattern, and specifies the arrangement position of the data of the QR code and the error correction code. Then, the user device determines the light and shade of all the cells, for example, according to the general reading order of the QR code.
  • the user device UD again scans all the cells of the composite code in a predetermined order.
  • the scanning order is, for example, from the lower right cell, scanning the first column upward, then scanning the second column downward, and so on from the odd column upward, and so on. Scan downward.
  • the scanning order is not limited in the third embodiment. For example, from the upper left cell, odd lines may be scanned rightward, and even lines may be scanned leftward for each row.
  • the finder pattern, alignment pattern, timing pattern, format, data and error correction code are all scanned.
  • the user device UD acquires an image of the next cell (S21C). This process is the same as that of the first and second embodiments except that the finder pattern, the alignment pattern, the timing pattern, the format, and the like are included in the process target.
  • the user device UD determines whether the second code is defined in the cell under processing (S22). This process is the same as in the first and second embodiments except that the object of determination includes a finder pattern, an alignment pattern, a timing pattern, a format, and the like. Then, if the second code is defined in the cell, the second code in the cell is analyzed (S23). This process is also the same as in the first and second embodiments except that the object of analysis includes a finder pattern, an alignment pattern, a timing pattern, a format, and the like.
  • the user device UD determines whether or not the next cell remains unprocessed (S24). If the next cell is not processed, the user equipment UD returns the process to S21.
  • This process is also the same as the first and second embodiments except that the object of determination includes a finder pattern, an alignment pattern, a timing pattern, a format, and the like.
  • the user apparatus UD when the processing of all the cells is completed and there is no next cell, the user apparatus UD generates information in which the first code is integrated for each character from the bit string obtained by the light / dark determination of the first code. (S25). This process is the same as in the first and second embodiments. However, the process of S25 may be performed in the process of S20C.
  • the user apparatus UD refers to the cell reading order information from the cell reading order information file CIU (S25A). Then, the user device UD integrates the numerical values specified by the dot pattern in each cell according to the cell reading order information, and restores the digital data by the second code (S26A).
  • the processes of S25A and S26A are the same as in the first and second embodiments except that the finder pattern, the alignment pattern, the timing pattern, the format, and the like are included in the process target.
  • the subsequent processing is the same as in the first and second embodiments, and thus the description thereof is omitted. It can be said that the user apparatus UD which executes the processing of S22, S23, S25A and S26A has a second acquisition unit.
  • the order of cells to which the bit string divided in the process of dividing the binary-coded bit string into data for each cell (S14 in FIG. 34) is to be determined in accordance with a specific rule.
  • the process of S25A is unnecessary. That is, in accordance with the rule, the user apparatus UD may unify the numerical values designated by the dot pattern in each cell, and restore digital data by the second code.
  • the user apparatus UD3, the management server MS3, and the like set the second code in the reading order different from the first code, for example, the cell reading order of the QR code.
  • the dot pattern forming the second code can be read from the cell and the compound code can be decoded. Therefore, decoding is possible even when a dot pattern is formed on a finder pattern, alignment pattern, timing pattern, format or the like.
  • the second code is statically arranged, and a composite code that does not change with time is illustrated.
  • the fourth embodiment exemplifies a composite code in which the second code changes with time with respect to the arrangement of cells of the first code.
  • Such a composite code can, for example, be displayed on the display of the information device.
  • the information device may combine the different first code with the fixed first code for each frame and display it on the display.
  • the second code may be output differently for each frame, or the same one may be output consecutively for a plurality of frames.
  • the second code may be any of those illustrated in FIGS.
  • information may be defined in the same procedure as pulse width modulation, so to speak, by changing the display period to be displayed with the same second code.
  • the amount of information defined is 3 bits.
  • information of about 60 bits / second can be transmitted in one cell by turning on and off the 3-bit fixed dot pattern for each frame in the time axis direction.
  • the first code for example, a predetermined area of the QR code (the finder pattern in FIG. 1, the alignment pattern, etc.) is also turned on and off to form a synchronization pattern for synchronizing the frames. May be The reading device may obtain the dot pattern which is the second code for each frame according to the frame synchronization by the first code.
  • the compound code can be acquired from the display of the information device by an image forming apparatus such as a camera of another information device, a scanner or the like in a state in which the compound code is not easily recognized by human eyes.
  • the image input unit (image input unit IIN1, IIN2 of the first embodiment, image input unit IIN3 of the third embodiment, etc.)
  • the second code can be input without a synchronization pattern.
  • the second code itself does not form a synchronization pattern in a predetermined area of the QR code, for example, by having a sequence of light and dark patterns indicating the start of the signal and a sequence of light and dark patterns indicating the end of the signal. It is also good.
  • the QR code which is an example of the first code, is premised to be visible, and is continuously displayed on the display for an arbitrary time.
  • the second code is displayed for 1 to 2 frames in 10 to 30 frames at 30 frames / sec, and for 1 to 4 frames in 20 to 60 frames for 60 frames / sec.
  • the first code and the second code are defined by the bright area, the dark color, and the area.
  • the content servers CS1, CS2, CS32, etc. which are generation devices, output composite codes
  • the user devices UD1, UD2, UD3, etc. which are reading devices restore digital data from the composite codes, and execute predetermined processing.
  • the dark area is, for example, a black area
  • the light area is a white area.
  • the composite code is not limited to what is formed by light areas and dark colors.
  • any two of R (red), G (green), B (blue), C (cyan), M (magenta), Y (yellow), B (black) and W (white) And the second code cell color may be used.
  • color code information any one of R (red), G (green), B (blue), C (cyan), M (magenta), Y (yellow), B (black) and W (white) may be used as a cell.
  • the first code and the second code may be defined as selectable as the color of. At that time, the identification of the cell forming the first code and the mark forming the second code can be made by a combination of different selectable colors.
  • the presence of the second code can be recognized based on whether or not there is a mark to be formed in the second code.
  • the color of the cell of the first code where the mark is not arranged and the mark of the second code may select the same color.
  • the mark must use a range of colors that can be distinguished from the color of the second code cell.
  • the color of the mark may be color code information, as long as the mark can be distinguished from the color of the cell of the second code.
  • the color of the cells of the first code and the second code is limited to a color that the conventional QR code reader can read the first code, and the second
  • the color of the mark of the code is eight colors of R (red), G (green), B (blue), C (cyan), M (magenta), Y (yellow), B (black) and W (white). It is also good.
  • R red
  • G green
  • B blue
  • C cyan
  • M magenta
  • Y yellow
  • W white
  • the color of the print medium may be the same as any of the cells in which the mark of the first or second code is formed.
  • the color of the first code cell in which the mark is not formed may be the same as the color of any of the aforementioned marks.
  • the color information of the mark may be 00 for 2 bits if it is 4 colors, or 000 for 3 bits if it is 8 colors. It goes without saying that the number of colors can be increased and the color code information can be increased by the composite QR code reader performance. For example, if the encoding modulation technique in the image identification is used, the information amount about twice that can be realized, and by using the color mark, the information amount of 6 times can be defined.
  • the QR code is exemplified as the first code.
  • the first code is not limited to the QR code.
  • a two-dimensional code including a color code, DataMatrix, and PDF 417 can be used as a first code.
  • the compound code in which the second code is combined is exemplified for the arrangement of the cells of the first code.
  • a time-series composite code in which the second code changes with time is illustrated with respect to the cell arrangement of the first code.
  • variations of the second code and variations of the method of reading the second code are illustrated. It is needless to say that the composite code described in the fifth embodiment can be applied to the first to fourth embodiments. Further, it goes without saying that the method of reading the composite code described in the fifth embodiment can be applied to the first to fourth embodiments.
  • the mark may have any shape such as a substantially circular shape, a rectangular shape, a cross shape, a polygonal shape or the like. Needless to say, the dots shown below may be replaced with other marks.
  • FIG. 41 illustrates the relationship between dark cells and pixels printed on a medium such as paper in the fifth embodiment.
  • FIG. 42 shows an example in which bright dots are formed in a 4 ⁇ 4 pixel dark cell.
  • FIG. 43 shows an example in which dark dots are formed in a 4 ⁇ 4 pixel bright cell.
  • the size of the dark color cell of the QR code to be printed is usually 0.17 mm to 0.5 mm, and it is recommended to print one cell at 4 ⁇ 4 pixels or more as shown in FIG.
  • the shape of one pixel may be either rectangular or circular.
  • the minimum 0.17 mm is 4 ⁇ 25.4 mm / 600 ⁇ 0.17 mm when printing at 600 dpi of the general printing resolution.
  • the dot size in the dot code is a pixel size of 600 dpi on data, that is, 25.4 mm / 600 ⁇ 0.042 mm.
  • the size of the dot becomes about 0.05 mm due to the bulging due to the dot gain and the ink expansion and permeation.
  • the fixing of the ink may be poor, and the size of the dot may be about 0.04 mm or less (but not less than 0.03 mm).
  • the bright dots may be on the order of 0.03 mm due to expansion of the peripheral dark print portion.
  • the dot code when the dot code is formed in the dark cell printing the minimum cell size (for example, 0.17 mm) with the minimum number of pixels (4 ⁇ 4), the four central pixels of the dark cell are formed as shown in FIG. By printing one of them, four dot patterns can be formed. That is, a 2-bit dot code can be defined for one cell.
  • the arrangement of dots connected to the area of the cell outline is difficult because the dots are difficult to recognize if the accuracy of the cell outline is poor. It is desirable to eliminate
  • dot code reading the image where the compound code is captured is stored in the frame buffer, and the dot is recognized in the frame buffer coordinate system to determine its center position (coordinate value), or the dot is arranged at the dot arrangement candidate position. This is done by recognizing the information, and acquiring the information defined by the dot arrangement pattern. The following two methods are representative.
  • Method 1 is a method of recognizing the center point of a dot. That is, method 1 extracts dots from a captured image, obtains center coordinate values of the dots, and obtains dot arrangement patterns. In this case, since dots are detected around the dots using the change ratio of light and dark as a threshold from the light and dark of the pixels forming the dots when imaging, the dots are in contact with other dots or cells of the same color. It is difficult to recognize. Therefore, it is desirable to arrange the dots a predetermined distance apart from which the two dots can be recognized from the end of the adjacent dots.
  • ⁇ B L B LA ⁇ B DA is within the predetermined range, it is known that there is no dot in the cell, and if it exceeds the predetermined range, the dot is present.
  • the threshold for determining the dot in that case is calculated as ⁇ ⁇ B DA or less or B DA + ⁇ ⁇ ⁇ B L or less.
  • the threshold for determining dots is calculated as ⁇ ⁇ B LA or more or B DA + ⁇ ⁇ ⁇ B L or more. Note that ⁇ and ⁇ are determined by B LA , B DA , ⁇ B L , the performance of the camera, the characteristics of the captured image, and the like.
  • Method 2 is a method of obtaining an overlapping portion of a dot obtained from an image and a predetermined area (dot arrangement candidate area) or a predetermined position (dot arrangement candidate position) where dots to be recognized are formed.
  • Method 2 can be briefly referred to as a method of determining whether a dot exists in a predetermined area or a predetermined position. In the case of method 2, it is not necessary to obtain center coordinate values of dots. It is important that whether or not a dot is present can accurately recognize the placement candidate area or placement candidate position of the dot. If the printing accuracy is good and the resolution of the compound QR code reader is high, the compound code reader can correctly recognize the central coordinate value of the cell and the area of the cell.
  • the center position of the dot is included in a predetermined area centered on the candidate dot arrangement position (X nS1 , Y nS1 ) called a bounding box or a predetermined area in the area is
  • the arrangement position of the dot is determined depending on whether or not the predetermined range of the included dot is included. Alternatively, it may be recognized by whether or not a part of the dot having a certain area is superimposed on the dot candidate arrangement position (X nS1 , Y nS1 ).
  • the medium on which the composite QR code is formed does not form a flat surface, or when the reader captures an image from an oblique direction with respect to the medium, the central coordinate value of the cell may be shifted.
  • This method 2 enables more accurate recognition than in the past even in the case of a composite code in which the extension cells subdivided in the form of a matrix by fine subcells form the second code.
  • the largest condition at that time is that the arrangement position of each cell can be recognized in the coordinate system in which the image in which the composite code is captured is stored in the frame buffer and the coordinate system is accurate.
  • a reference mark serving as a reference is provided, the reference mark is provided independently without being connected to the subcell, and the reference mark is extracted to obtain a central coordinate value.
  • the arrangement position of the subcell can be recognized by the relationship between the arrangement position of the reference mark and the subcell.
  • FIG. 44 is a diagram illustrating a method of determining the position of the dot by the bounding box.
  • the reading device draws a straight line from the cell center position toward the corner of the cell, and extracts pixels of dots that overlap the straight line.
  • the center position (coordinate value) of the cell can be obtained by reading the first code in most cases, but when it is obtained by using a coordinate value of a coordinate system different from that of the frame buffer, the captured image It is necessary to convert to the coordinate value of the frame buffer coordinate system in which is stored.
  • the center of the area on the straight line overlapping the dot is a predetermined area centered on the candidate arrangement position (X nS1 , Y nS1 ) in advance. It may be determined based on whether the coordinate value is included within the bounding box.
  • the bounding box is preferably a circle having a diameter of about 25% (for example, about 20% to 30%) of the cell size similar to the size of the dot, but it may be a rectangle or another shape, and the size may be misidentified.
  • the level may be determined as appropriate based on the level of error correction assuming the rate, the printing accuracy, and the imaging resolution.
  • the overlapping area may be missing halfway or the ink may fly, and it is desirable to determine them.
  • region which consists of the row of the pixel which overlapped with the straight line isolate
  • the reader may regard the largest area as the area of dots.
  • the reading device may integrate the separated regions as one continuous region.
  • the arrangement positions of four dots can be set and recognized in one diagonal line.
  • the arrangement of eight dots in total by two diagonal lines can be set to define eight ways, ie, 3 bits.
  • the eight ways are the case where dots are arranged at any one of eight arrangement candidate positions of eight dots.
  • the threshold value for determining whether or not it is a dot is the above-mentioned change ratio of light and dark etc.
  • ⁇ ⁇ B DA or ⁇ ⁇ B LA or B DA + ⁇ ⁇ ⁇ B L may be used. If the placement position of the cell can be recognized with a certain accuracy, the bounding box is set to a size slightly smaller than the size of the cell, and if dots are extracted within the bounding box, the influence of the adjacent cells of the same color connected by the dots. I do not receive.
  • the dot code is formed in the dark and bright cells of the data area of the QR code, even if the same area as the QR code is used for error correction of the dot code, the method of dot recognition shown in FIG.
  • the dot code which can define 3 bits per cell, data of 3 times the QR code can be stored in the composite QR code. Even if the dot code is formed only in the bright color cell of the data area, the information amount of about 1.5 times can be stored.
  • a dot code can be formed also in a cell which forms a finder pattern (cutout symbol), an alignment pattern, a quiet zone, a timing pattern, and format information, and an information amount about twice that of a QR code can be stored.
  • the dot code when the dot code is formed in all the cells of bright and dark colors other than the data area, four or more times the information of the QR code can be stored.
  • the difference in the arrangement of these dots can be recognized without any problem even with the current low resolution smartphone camera.
  • the printable area is 4 ⁇ 4, but if the cell size is increased, the dot arrangement pattern can be further increased.
  • one cell is printed at 5 ⁇ 5 pixels at 600 dpi and the cell size is 5 ⁇ 25.4 mm / 600 ⁇ 0.21 mm in order to further increase the information amount of the dot code. is there.
  • Four places shown by nets indicate the formation positions of the dots. Four bits can be defined in one cell depending on whether or not to form dots in these four places.
  • FIG. 45 shows an example in which one cell is printed at 600 dpi and the cell is printed at 5 ⁇ 5 pixels
  • FIG. 46 is an example printed at 7 ⁇ 7 pixels.
  • the cell size is 7 ⁇ 25.4 mm / 600 ⁇ 0.30 mm.
  • the portions shown by nets (4 locations of 5 ⁇ 5 pixels and 9 locations of 7 ⁇ 7 pixels) indicate the dot formation positions.
  • a dot When printing a cell at 7 ⁇ 7 pixels, a dot may always be formed in one central pixel and used as an indicator that a dot code is formed in the cell. In that case, 8 bits are defined in one cell. When any one pixel is formed, eight dots are arranged in eight ways (nine ways including the case of forming a dot at the center), and one cell has three bits. It is defined. As a method of recognizing the dot code, the reading device sets a bounding box for the area where the dot is arranged based on the center position of the cell, and determines whether the dot is arranged in the bounding box or not. It is sufficient to recognize the arrangement of dots.
  • the size of the bounding box is about 20% (about 15 to 30%) of the cell size comparable to the dot size in FIG. 45, and about 14% (about 10% to 20%) of the cell size in FIG. Preferably, it is a circle or a rectangle having a diameter or a side of.
  • the reading device has a ratio of dark color or light color recognized in the bounding box to a predetermined ratio (for example, 50% in consideration of cell center position deviation and printing accuracy). If it exceeds, the dot may be determined to be placed. Further, the reading device may obtain the central coordinate value of the dot and make a determination based on the dot in the bounding box at a position closest to the coordinate value of the dot originally disposed in the cell.
  • the threshold value for determining whether or not a dot is used may be the change ratio of light and dark described above, ⁇ ⁇ B DA, ⁇ ⁇ B LA or B DA + ⁇ ⁇ ⁇ B L.
  • similar dot codes can be defined by bright dots for dark cells as well.
  • the presence of the dot code does not affect the recognition of the cells constituting the QR code (it can be properly recognized if the mixture of other colors is 1/3 or less).
  • the number of pixels constituting the cell may be increased to increase the dot arrangement position, and the printing resolution may be increased to increase the dot arrangement position.
  • the dot size may be reduced if the imaging resolution of the complex code reader is sufficiently high.
  • many dot arrangement positions can be set, and the information amount of the dot code can be increased.
  • the dot code can be formed on the cells forming the finder pattern (cut-out symbol), alignment pattern, quiet zone, timing pattern, and format information, and the amount of information can be further increased.
  • the composite QR code in which the dot code is formed in the cell of the QR code can increase the amount of information embedded in the same area as the conventional one, and is a technology that can suppress the influence on the recognition of the original QR code. is there.
  • one cell is divided to increase the amount of information, recognition becomes difficult when divided cells of the same color are adjacent to each other, and printing and imaging are performed with ultra-high resolution. Is a prerequisite and poor in versatility.
  • this technology makes it easy to recognize dots with opposite colors (dark and light) even with a low resolution camera, and the area occupied by the dots is small and QR code recognition It is a major feature that it is possible to add more information to the prior art while securing the From the above, it is possible to define only 1-bit information in one cell forming a commonly used QR code, but in the composite QR code, a dot code formed in one bright cell and / or dark cell Thus, at least about 2 bits to 8 bits can be defined for one cell.
  • a camera mounted on a mobile terminal such as a current smartphone or the like combines information of 6 to 10 times or more the QR code with a composite QR code (dot code recorded in a composite QR code Can be read from
  • the information recorded in the composite QR code can be acquired only by photographing with a camera and reading with a dedicated application, without using communication such as a telephone line, the Internet, or wireless communication.
  • communication such as a telephone line, the Internet, or wireless communication.
  • transmission and reception of information by the compound QR code is more effective for protection of personal information, confidential information and the like as compared with the conventional communication.
  • the composite QR code it is possible to provide the information to the other party who wants to pass without passing the information provider's own mail address or the personal information of the SNS.
  • the dot code can store a maximum of 2.337 KB and can store approximately 2 to 3 times the QR code.
  • the Japanese text compression data technology can store 4,392 characters.
  • the rectangular area to be read can be read.
  • 3,720 characters can be stored by the Japanese text compression data technology.
  • the decoded QR code of FIG. 46 when one cell is imaged with 14 ⁇ 14 pixels, 864/14 ⁇ 61, and version 11, 61 ⁇ 61 cells (155 characters of Kanji at error correction level M, 0.251 KB, dots The code can be read up to a maximum of 2.008 KB), and the dot code can store 6 to 8 times the amount of information of the QR code, and when printed, 61 ⁇ 14 ⁇ 25.4 / 600 mm3636. It is possible to read up to a rectangular area whose side is 15 mm.
  • 3,720 characters can be stored by the Japanese text compression data technology.
  • the error correction of the QR code is the level M
  • the level M is a commonly used error correction level
  • more information is a dot code
  • the market penetration rate of the resolution of the display of the popular smartphone is 375 ⁇ 667 pixels 34.93%, 320 ⁇ 568 18.85%, 360 ⁇ 640 13.07%, total About 2/3 is a low resolution display. Therefore, even if a 10% margin is provided in the display area, it is necessary to display the hybrid QR code in the 288 ⁇ 288 area. 1) Similar to the printing of the dot code, in the display of the decoded QR code of FIGS. 42 to 44, one cell is displayed by 4 pixels.
  • 57 ⁇ 57 cells (131 characters of Kanji with error correction level M, 0.213 KB, dot code) Can store up to 0.852 KB) and can store about 3 to 4 times the QR code.
  • 41 ⁇ 41 cells (65 characters of Kanji with error correction level M, 0.106 KB, dot code) Can store up to 0.848 KB) and can store about 6 to 8 times the QR code.
  • the Japanese text compression data technology can store 1,560 characters. However, this is not enough to store content information such as Japanese text, voice, and pictures.
  • a large capacity hybrid QR code can be easily realized because it can be implemented by a time-series dot code in which the dot code described later is changed over time or a color dot code that colorizes dot display. it can.
  • 113 ⁇ 113 cells (561 kanji characters at error correction level M, 0.991 KB, dot code) Can store up to 7.928 KB) and can store about 6 to 8 times the QR code.
  • the Japanese text compression data technology can store 13,464 characters.
  • the compound QR code When displaying on a smart phone the compound QR code, a large amount of information can be generated by displaying a plurality of different dot codes for each predetermined time.
  • reading a dot code that blinks with the hybrid QR code reader it can be processed at high speed by reading the QR code only once, and then reading only the dot code.
  • the camera shake at the time of photographing tracks changes in the imaging position of the timing pattern and the alignment pattern, and the dot code can be read accurately if correction of the detected dot position is performed each time.
  • the hybrid QR code is displayed on the smartphone as in the fifth embodiment, the amount of information that can be stored in the dot code at one time is about 0.85 K, but the dot code is changed about 12 times in 1 to 3 seconds. Thus, it is possible to acquire an information amount of about 10 KB. If this is reproduced as photo data, it can be viewed as a sufficiently high quality image when it is displayed on a smartphone, and text information exceeding 70,000 characters can also be transmitted.
  • the error correction code employed in the QR code is a Reed-Solomon code, which is a type of block code, but the error correction code employed in the dot code may use a convolutional code.
  • convolutional codes Unlike block codes, convolutional codes have no data delimiters, scatter one data around them, and use the information to decode them in a statistical manner, so error correction performance is high and constraint lengths are high. If it is small, it can be processed quickly.
  • error correction code various types of decoding using various error correction codes and secondary information (luminance information, time series and peripheral error information, etc.) to estimate an error according to the information capacity of the dot code and error rate Modulus (including soft decision decoding) can be applied.
  • error correction codes suitable for dot codes may be used.
  • QR codes have been promoted all over the world, but none of them have become widespread because the central coordinates of the cells can not be accurately calculated, and judgments of divided cells etc. are accurate. It can be considered that the project could not be implemented. Furthermore, there is a problem that when the information amount of the divided cells is increased, the original QR code recognition rate is lowered.
  • the hybrid QR code is a revolutionary technology that solves these problems by forming a dot code with a small area ratio in a cell and arranging a reference dot and a reference pattern at predetermined intervals.
  • FIG. 47 illustrates a compound code generation process for determining authenticity.
  • the information stored in the data area of the QR code is encoded.
  • the data area is the data itself represented by the QR code excluding the position detection pattern (finder pattern), alignment pattern, timing pattern, format information, and error correction code among the QR codes illustrated in FIG.
  • the reason for encoding the information stored in the data area of the QR code is the lack of information or stains when printing the printed QR code, the shooting status of the QR code, etc.
  • the read QR code is the QR code at the time of creation Is often not exactly the same.
  • the QR code displayed on the display may not match as well, depending on the shooting condition of the QR code. Therefore, it is meaningless to encode all of the QR codes having an error correction code and compare the encoded information with each other.
  • encoding includes performing irreversible conversion from data using a hash function to obtain a code string.
  • the code string includes plaintext (signature target data), and the encoded information encoded using a hash function includes a hash value.
  • the composite QR code is preferably issued by a specific issuing organization that strictly manages the encryption means. This makes it possible to construct an environment that can be used by all users.
  • it may be an issuer who has a unique encryption means and provides a service to the particular user when it is used.
  • the issuance requester who requests the issuance of the composite QR code transmits the URL and data (information stored in the data area of the QR code) to the issuing organization.
  • the issue requester should be limited to a corporation, government or other organization or individual approved by the issuing agency in advance.
  • Whether to issue a composite QR code to the issue requester is preferably sequentially authenticated by a predetermined method.
  • the issued composite QR code or the issuance requester may be made public, and a third party may evaluate it to improve the reliability.
  • the third party may be a general user.
  • a digital signature algorithm ie, signature generation may be generated with a secret key.
  • the digital signature algorithm includes various methods including SHA256 and is standardized by the National Institute of Standards and Technology (NIST) under the U.S. Department of Commerce.
  • the encrypted information obtained by encrypting the encoded information by the encryption means includes that it is a digital signature.
  • the QR code is generated from the information (not limited to the URL) stored in the data area received from the compound QR code issuance requester, and the encryption information is formed from a plurality of cells defined by the QR code It is stored in the dot code data area.
  • the data area may not be physically defined, but may be logically defined.
  • the encryption information may be stored in the QR code.
  • the completed composite QR code is transmitted to the issue requester, and the issue requester forms the composite QR code on a medium (including any method capable of recognizing the composite QR code by printing, marking, display on a display, etc.) Provide to third parties.
  • a medium including any method capable of recognizing the composite QR code by printing, marking, display on a display, etc.
  • the composite QR code includes one electronic signature (also referred to as a digital signature) for each of the data stored in the data area of the first code and the second code, or for each data.
  • the electronic signature may be generated, and the electronic signature may be stored in the data area of either the first or second code.
  • a digital signature may be created and stored in the data area of the second code.
  • an electronic signature may be created and stored in the data area of the first code.
  • One electronic signature is generated for the first code and the second code, and the electronic signature is added to the adjacent area of the first code or the second code, or the first code or the additional second code May be stored.
  • Composite QR formed on a medium including any method that can recognize composite QR code by printing, marking, display on a display, etc.
  • an information processing apparatus such as a smartphone or a tablet on which a dedicated compound QR code reader or a dedicated compound QR code reading application is downloaded and installed.
  • the arrangement of the formed dots may be read to recognize the dot code.
  • information of 2 bits or more may be defined in the cells in stages by lightness, hue, and the like.
  • the decryption means may include signature verification according to a verification algorithm in the digital signature and may be the signer's public key.
  • the encoded information (eg, cache value) obtained by encoding the QR code read in (3) by the encoding unit (eg, cache function) and the encrypted information stored in the dot code are decrypted If the decryption information decrypted by the encryption unit (for example, the cache value when the QR code is generated at the issuing organization) matches, it is verified that the composite QR code is a composite QR code issued by the issuing organization. Be done.
  • the decryption means includes a public key.
  • the authentication method is not limited to matching / mismatching between the encoding information and the decoding information. It may be confirmed that the coding information and the decoding information have a predetermined relationship.
  • FIG. 47 is a flowchart illustrating a method of generating a composite QR code for the authenticity determination.
  • the generation of the composite code is executed by, for example, an information processing apparatus such as the management server MS1 and the content server CS1 illustrated in FIG. 32 (hereinafter exemplified by the management server MS1).
  • the management server MS1 calculates coding information (example: hash value) by the coding means (example: hash function) based on the QR code data (T11).
  • the data for QR code means what is incorporated as data in the data and the part of the error correction code in the structure of the QR code illustrated in FIG.
  • the management server MS1 encrypts the encoded information calculated in T11 by the encryption unit (T12).
  • encrypting the encoded information is also referred to as calculating the encrypted information.
  • the management server MS1 has, for example, a pair of a secret key and a public key.
  • the management server MS1 applies to the electronic certificate authority (CA) (or registration authority (RA)), the public key is registered, and a public key certificate and a private key corresponding to the public key are issued I assume.
  • the management server MS1 encrypts the encoded information using the secret key issued from the electronic certificate authority (CA).
  • CA electronic certificate authority
  • RA registration authority
  • the management server MS1 performs error correction on the QR code data to generate a QR code. Also, the management server MS1 applies error correction to the dot code data including the encryption information to generate a dot code in the cell of the QR code (T13). By the process of T13, the same composite code as that of the first to third embodiments is generated.
  • the management server MS1 forms a composite QR code on the medium (T14).
  • the medium to be formed also includes a display screen by a display or the like. That is, as illustrated in FIG. 32, the generated composite QR code is provided to the remote user device or content server through the broadcast medium or the communication medium. Also, the formed composite QR code is stored in the storage medium. Also, the formed composite QR code is printed on a print medium.
  • FIG. 48 is a flowchart illustrating a compound QR code reading and authentication process.
  • the device that executes the composite QR code reading / authentication process is, for example, the user devices UD1, UD2, etc. (hereinafter simply referred to as UD1) illustrated in FIG.
  • the user device UD1 reads the composite QR code by the reading device (T21).
  • the reading device is, for example, an imaging device that acquires an image of a composite QR code.
  • reading the compound QR code means taking an image of the compound QR code on the medium, storing it in the main storage unit 12 (see FIG. 33) or the image memory, and acquiring data from each of the QR code and the dot code It means that.
  • data encoded into the QR code is referred to as data for QR code.
  • the data encoded by the dot code among the composite QR code is encrypted information encoded by the dot code generated by the process of T13.
  • the user device UD1 calculates coding information (example: hash value) by the coding means (example: hash function) for the data for QR code acquired from the QR code (T22). Along with the process of T22, the user device UD1 calculates decryption information of the encryption information acquired from the dot code by the decryption unit (T23).
  • the user device UD1 collates the coding information and the decoding information (T24). Then, when the encoding information and the decoding information match, the user apparatus UD1 determines that the authentication by the composite code is successful, and carries out the corresponding processing. For example, the user device UD1 executes the process specified by the QR code of the composite QR code (T25). Also, for example, the user device UD1 accesses the URL specified by the QR code of the composite QR code. Also, for example, the user device UD1 executes the corresponding processing, assuming that the information designated by the QR code of the composite QR code is the correct information.
  • the corresponding processing includes, for example, reproduction of content designated by the QR code in the composite QR code, access to a financial institution account designated by the QR code, a credit card number designated by the QR code, etc. Processing, display of the authenticity determination result of the medium on which the composite QR code is printed, and the like.
  • the user apparatus UD1 determines that the authentication by the composite code has failed, and notifies the user of the result (T26).
  • processing example 1 various authentication processing, authenticity determination processing, tampering detection processing, and the like can be performed by the composite QR code.
  • the process of embedding the encryption information of the QR code data as a dot code is exemplified above, the encryption information may be encoded as part of the QR code and decrypted.
  • FIG. 49 is a flowchart illustrating a method of generating a composite QR code for coding the encrypted information of dot code data into a QR code and determining authenticity.
  • the management server MS1 calculates coding information (example: hash value) by coding means (example: hash function) based on the dot code data (T31).
  • the management server MS1 calculates encryption information by the encryption unit based on the encoding information (T32).
  • the management server MS1 performs error correction on the QR code data including the encryption information to generate a QR code, and performs error correction on the dot code data to generate a dot code in the cell of the QR code ((1) T33). That is, here, the management server MS1 incorporates the encryption information into the QR code.
  • the composite QR code is formed on the medium (T34).
  • a medium on which the composite QR code is formed a display screen by a display or the like is also included, and a broadcast medium, a communication medium, and a storage medium print medium are included as in FIG.
  • FIG. 50 is a flowchart illustrating a compound QR code reading and authentication process.
  • the user device UD1 reads the composite QR code by the reader (T41).
  • the user device UD1 calculates encoding information (example: hash value) by using dot code data as encoding means (example: hash function) (T42).
  • the user device UD1 calculates decryption information by the decryption unit based on the encryption information acquired from the QR code (T43).
  • the user device UD1 collates the coding information and the decoding information (T44). Then, when the encoding information and the decoding information match, the user apparatus UD1 determines that the authentication of the compound code is successful, and executes the corresponding processing (T45). For example, the user device UD1 executes the process specified by the dot code of the composite QR code. Also, for example, the user device UD1 accesses the URL specified by the dot code of the composite QR code. Also, for example, the user device UD1 executes the corresponding processing, assuming that the information designated by the dot code of the composite QR code is the correct information.
  • the corresponding processing includes, for example, reproduction of the content designated by the dot code in the composite QR code, access to the financial institution account designated by the dot code, a credit card number designated by the dot code, etc. Processing, display of the authenticity determination result of the medium on which the composite QR code is printed, and the like.
  • the user apparatus UD1 determines that the authentication by the composite code has failed, and notifies the user of the result (T46).
  • the management server MS1 registers the encrypted information of the dot code data in the QR code to form a composite code.
  • the management server MS1 may register and decode the encryption information of the first dot code data in the second dot code.
  • the second dot code is, for example, a dot code of a cell different from the cell in which the first dot code is formed.
  • FIG. 51 is a flowchart illustrating an example of a method of generating a composite QR code for authenticity determination by encrypting the data for QR code and encoding it into a dot code, and also encrypting the data for dot code and encoding it into a QR code is there.
  • the management server MS1 calculates coding information 1 (example: hash value) by the coding means (example: hash function) based on the data for QR code (T51).
  • the management server MS1 calculates encryption information 1 by the encryption unit based on the encoding information 1. That is, the management server MS1 encrypts the encoded information 1 with the secret key (T52).
  • the management server MS1 calculates coding information 2 (example: hash value) by the encoding means (example: hash function) based on the dot code data (T53).
  • the management server MS1 calculates encryption information 2 by the encryption unit based on the encoding information 2. That is, the management server MS1 encrypts the encoded information 2 with the secret key (T54).
  • the secret key used in T54 may be the same key as the secret key used in T52, or may be a different secret key. In any case, authentication is performed with the public key corresponding to the secret key.
  • the management server MS1 performs error correction on the data for QR code and the encrypted information 2 as data to generate a QR code (T55). Furthermore, the management server MS1 performs error correction on the cell of the QR code, using the dot code data and the encryption information 1 as data, to form a dot code (T56).
  • the management server MS1 forms a composite QR code on the medium (T57).
  • a medium on which the composite QR code is formed a display screen by a display or the like is also included, and a broadcast medium, a communication medium, and a storage medium print medium are included as in FIGS.
  • FIG. 52 is a flowchart illustrating the compound QR code reading and authentication process.
  • the user device UD1 calculates encoding information 1 (example: hash value) by the encoding means (example: hash function) based on the data for QR code acquired from the QR code (T61).
  • the user device UD1 calculates the decryption information 2 by the decryption unit based on the encryption information 2 acquired from the QR code (T62). That is, the user device UD1 decrypts the encrypted information 2 into the decrypted information 2.
  • the user device UD1 calculates coding information 2 (example: hash value) by the encoding means (example: hash function) of the dot code data acquired from the dot code (T63).
  • the user device UD1 calculates the decryption information 1 by the decryption unit based on the encryption information 1 acquired from the dot code (T64). That is, the user device UD1 decrypts the encryption information 1 into the decryption information 1.
  • the user apparatus UD1 collates the respective encoding information and the decoding information (T65). Individually, collation refers to collation of coding information 1 with decoding information 1 and collation of coding information 2 with decoding information 2. If the two collations match at T65, the user apparatus UD1 determines that the compound code has been successfully authenticated, and performs corresponding processing (T66). Since the process of T66 is the same as the process of T25 and T44, the details thereof will be omitted.
  • the user apparatus UD1 determines that the authentication by the composite code has failed, and notifies the user of the result (T67).
  • the management server MS1 encodes the encrypted information of the dot code data into a QR code, and encodes the encrypted information of the QR code data into a dot code to form a composite code.
  • the management server MS1 encodes the encryption information of the QR code data into a QR code and the encryption information of the dot code data into a dot code, and the user device UD1 decrypts both of them. You may make it
  • FIG. 53 is a flowchart illustrating a method of generating a composite QR code for the authenticity determination by encoding the encryption information of the data string formed by the QR code data and the dot code data into a dot code.
  • the management server MS1 calculates encoding information (example: hash value) by encoding means (example: hash function) based on a data string formed of data for QR code and data for dot code. (T71).
  • the management server MS1 calculates encryption information by the encryption unit based on the encoding information (T72). That is, the management server MS1 encrypts the encoded information into the encrypted information. Next, the management server MS1 performs error correction on the QR code data to generate a QR code. Also, the management server MS1 applies error correction to the dot code data including the encryption information to generate a dot code in the cell of the QR code (T73).
  • the management server MS1 forms a composite QR code on the medium (T74).
  • a medium on which the composite QR code is formed a display screen by a display or the like is also included, and a broadcast medium, a communication medium, and a storage medium print medium are included as in FIGS.
  • FIG. 54 is a flowchart illustrating a compound QR code reading and authentication process.
  • the user device UD1 reads the composite QR code by the reading device (T81).
  • the user device UD1 calculates encoding information (example: hash value) by encoding means (example: hash function) using data for QR code and data for dot code as a data sequence (T82).
  • the user device UD1 calculates the decryption information by the decryption unit based on the encryption information acquired from the dot code (T83). That is, the user device UD1 decrypts the encryption information into decryption information.
  • the user device UD1 collates the coding information and the decoding information (T84). Then, if the encoding information and the decoding information match, the user apparatus UD1 determines that the authentication by the composite code is successful, and carries out the corresponding processing (T85). Since the process of T85 is the same as the process of T25, T44, and T66, the details thereof will be omitted.
  • the user apparatus UD1 determines that the authentication by the composite code has failed, and notifies the user of the result (T86).
  • the management server MS1 codes the encryption information of the data string formed by the QR code data and the dot code data into a dot code to form a composite code.
  • the management server MS1 encodes the encryption information of the data string formed of the QR code data and the dot code data into a QR code, and the user device UD1 decrypts both of them. You may do it.
  • FIG. 55 is a flowchart illustrating a method of generating a composite QR code in which encoding information of a data string formed of QR code data and dot code data is encoded into dot code.
  • the secret key and the public key are not used.
  • the management server MS1 calculates encoding information (example: hash value) by encoding means (example: hash function) for a data string formed of data for QR code and data for dot code (T91) .
  • the management server MS1 performs error correction on the QR code data to generate a QR code, performs error correction on dot code data including the encoded information generated in T91, and generates a dot code on the cell of the QR code. To generate (T92).
  • the management server MS1 forms a composite QR code on the medium (T93).
  • the medium on which the composite QR code is formed also includes a display screen by a display or the like, and includes a broadcast medium, a communication medium, and a storage medium print medium as in FIGS. 47, 49, 51, and 53. It is.
  • FIG. 56 is a flowchart illustrating the compound QR code reading and authentication process.
  • the user device UD1 reads the composite QR code by the reading device from the information acquired from the content server (T101).
  • the user device UD1 calculates encoding information (example: hash value) by encoding means (example: hash function) using data for QR code and data for dot code as a data string (T102).
  • the user device UD1 acquires encoding information (example: hash value) from the dot code (T103).
  • the user apparatus UD1 collates the calculated encoding information with the acquired encoding information (T104). Then, when the encoding information and the decoding information match, the user apparatus UD1 determines that the authentication by the composite code is successful, and carries out the corresponding processing (T105).
  • the process of T105 is the same as the process of T25, T44, T66, and T85, and thus the details thereof will be omitted.
  • the user apparatus UD1 determines that the authentication by the composite code has failed, and notifies the user of the result (T106).
  • the process example 5 it can be confirmed whether the error correction was correct. Further, when the encoding process used in T91 and T102 is a process that can be specified only by the management server MS1 and the user device UD1, various authentication processes and authenticity determination processes are performed as in the process example 1 to the process example 4. And tamper detection processing can be performed.
  • the compound QR code can be electronically authenticated without being authenticated on the Internet, which leads to the prevention of hacking and the like on the Internet. Furthermore, if a service provider that provides content and various services on the Internet provides a mechanism for users to download and install even a compound QR code reading application, for various content services and electronic authentication using compound QR codes. There is no need to operate a server that is bothersome to manage and expensive. Thus, the service provider can provide a low cost service to the continued user. In addition, even small service companies can provide various content services using composite QR codes without building servers.
  • the compound QR code is characterized in that the QR code in which the URL and the like are stored can be read not only by the compound QR code reader but also by a popular QR code reader, but the area occupied by the dot code is at most It is 20% or less, and furthermore, the conventional QR code reader treats an image such as a point as noise and ignores it so that QR code reading will not be disturbed.
  • data may be stored in a dot code, and as shown in FIGS. 49 and 50, the electronic signature may be stored in the data area of the QR code. This is because dot codes can take advantage of the ability to store much more information.
  • data such as a URL having a small capacity may be stored in a QR code
  • data having a large capacity such as a content may be stored in a dot code.
  • format information such as dot code type and version, error correction code version, etc. is also stored in the QR code, and at least data and error correction code are stored in the dot code, and the dot code is information obtained by the QR code. May be read.
  • the data format of the dot code can be made variable, and versatility can be enhanced. That is, the data format of the dot code can be determined for each field of use, and any compound QR code reader can read the dot code properly.
  • the compound QR code in which the purchased ticket number etc. is stored is sent from the ticket seller, and when the ticket is used, the compound QR code compatible application displays the one-time password that changes with time by transmission from the cloud with dot code It can be read by the compound QR code reader at the time of admission confirmation, and only the person who has purchased the ticket can not enter. Furthermore, it is possible to prevent the resale of the ticket by acquiring the ticket purchaser's smartphone ID and transmitting the one-time pass award to the smartphone. By storing the one-time password in the dot code, it is difficult to visually recognize even if the dot changes, so it is possible to make the user not aware that the one-time password is used.
  • the QR code changes, so that the user is informed that copy protection is being implemented, and there is a deterrent effect on the forger.
  • the current QR code can be read by anyone and generated by anyone.
  • the ticket is a print medium and the ticket number is embedded in the QR code, there is a high possibility that the third party can issue the ticket number by performing reverse engineering based on the information read from the QR code. . If the ticket number issuance procedure is known, different ticket numbers can be easily generated.
  • the compound QR code reading application is generally provided widely, the generation of the compound QR code can be made available only to a specific compound QR code issuing organization or used as a ticket number only for the compound QR code issuer. It is sufficient to provide a composite QR code generation application that can encode only a specific dot code (a limited unique dot code). This makes it impossible to produce a forged ticket having a ticket number different from the ticket number of the acquired ticket. If the composite QR code issued to the world is completely unique code, a composite QR code generated by a composite QR code generation application that can be encoded by limiting to a specific unique dot code, and other generated applications It does not have to overlap with the composite QR code that can be generated.
  • a ticket is for acquiring various services, such as event participation, facility admission, transportation system utilization, a meal ticket, and the use ticket of the administrative service.
  • a composite QR code generation application capable of encoding a unique dot code as a ticket number is described, but any usage in any field is limited to a particular unique under the respective contract. It is desirable to provide a service that provides a composite QR code generation application that can encode a limited dot code.
  • a compound QR code issuing organization always issues a unique compound QR code.
  • the composite QR code is a code in which the QR code and the dot code are combined, and it goes without saying that a unique composite QR code can be generated even if the dot code is the same and the QR code is unique.
  • a large amount of personal information (biometric information such as a face, a fingerprint, an iris, a vein, etc.) is error-corrected and registered in a dot code. Digitally sign either the QR code or the dot code so that the personal information is not falsified. How to use: When making a payment etc., display the composite QR code, read it and get it, and get it from the person on the spot (acquiring the face or fingerprint, iris, vein information etc by the camera or sensor) Depending on whether or not the same biometric information matches, identity verification can be performed even without a person, and financial settlement, entry of important facilities, and operation of important devices can be performed with high security.
  • the personal information can be easily performed by photographing a face, a fingerprint, and an iris with a camera mounted.
  • the personal information may be raw data obtained by photographing a face, a fingerprint, or an iris with a smartphone, or feature point data obtained by analyzing the raw data with a dedicated application.
  • feature point data it is an advantage that the amount of data is small, but it is premised to use a specific matching system that generates the same feature points as the feature point data, and the versatility is poor.
  • the volume of raw data is a large amount of information and can not be stored by the conventional QR code, the composite QR code can store such information sufficiently.
  • the current face recognition technology can be realized with a picture compressed to 2 to 3 KB.
  • the system at the store side may provide the purchaser with a print medium on which the item, unit price, total payment amount, etc. of the purchased item is printed, or the content may be displayed on the display.
  • the financial settlement card information is displayed on the purchaser's smartphone, and the system at the store side reads it with the compound QR code reader (may be a smartphone), and based on the read financial settlement card information
  • the purchase item settlement information is transmitted to the settlement server.
  • the financial settlement server immediately notifies the POS on the store side, and the purchase of the product is completed.
  • payment completion information such as purchase item payment information and purchase store information may be transmitted to the purchaser's smartphone.
  • the store side can eliminate the operation of the printer, and the purchaser can manage information of the purchased item as data. Also, if payment can not be made, such information may be displayed on the smartphone even if the credit card is overutilized or the prepaid card, or the bank account is insufficient in balance.
  • the purchaser displays the financial payment card information on the smartphone with compound QR code, and the store side system has compound
  • the display content of the smartphone is read by a QR code reader (or a smart phone), and based on the read financial payment card information, the purchase payment information is transmitted to the financial payment server.
  • the settlement server approves the settlement
  • the settlement approval result is immediately notified to the POS on the store side, and the purchase settlement of the product is completed.
  • information such as purchased item information and purchased store information is transmitted to the smart phone of the purchaser, and icons such as "settlement”, “stop”, “collective payment” and “dividend payment” are displayed, and even if payment is made Good. Also, if payment can not be made, such information may be displayed on the smartphone even if the credit card is overutilized or the prepaid card, or the bank account is insufficient in balance.
  • the system at the store side provides the purchaser with a print medium on which the item, unit price, total payment amount, etc. of the purchased item is printed, or the content is displayed on the display and confirmed by the purchaser, and then payment is made by credit card etc. do it.
  • the store side displays the composite QR code on the POS display (which may be a smartphone) and the purchaser reads the composite QR code
  • the item, unit price of the purchased item, and the total payment amount are displayed.
  • icons such as “settlement”, “cancel”, “collective payment”, “dividends payment” are displayed and selected, the payment information is sent to the financial payment server, and if payment is approved, the POS on the store side is immediately notified Your purchase is complete. If the prepaid card or bank account is insufficient in balance, the balance or shortage will be displayed. In addition, not giving the card to the other party means that the card information is not easily copied, and it is possible to suppress the spoofing damage.
  • the compound QR code in which the remittance destination information and the like are registered is displayed on the other party's smartphone, the remittance destination information is displayed when it is read by the sender's smartphone, and the amount is input to the smartphone.
  • the remittance is carried out to the other party and the financial transaction between individuals is concluded.
  • personal information such as a photo is registered in the composite QR code, identification of the money recipient becomes easy.
  • a password may be input when tapping the “settlement” icon in order to enhance security so that a third party other than the person in question can not transfer money.
  • these financial transactions in addition to the amount and date, 'lending', 'donating', etc. can be classified and recorded.
  • the system of the benefit provider forms (prints or displays) the compound QR code that can be used to benefit the customer when the customer gets the benefit, and the customer's smartphone You can get the benefits by reading.
  • the system of the privilege provider reads the composite QR code displayed by the customer's smartphone, grants the privilege to the customer's smartphone by various communication means such as a telephone line, WIFI, Bluetooth, etc., and clears the used privilege. can do.
  • the composite QR code may include a telephone number or address of a communication destination, a smartphone ID, a membership number, and the like.
  • the system confirms the person, such as a license, health insurance card, student card, employee card, membership card, passport, etc.
  • the information is stored in a dot code even if the person does not present the card, May display the composite QR code on the smartphone.
  • the system can read the dot code with the compound QR code reader, display the necessary information on the reader, tell the person the date of birth, address, etc. and ask them to confirm their identity.
  • the reading of the composite QR code formed on the print medium, the display, or the like can also be performed by a dedicated application installed in the smartphone.
  • photographs can also be stored in the dot code, identity verification of conventional photographs is possible without a card.
  • the compound QR code can store text (about 4,000 characters, more than 10,000 characters if color dots can be used) for several pages of paper media, and the system reads the compound QR code printed on the spot The information can be easily obtained.
  • the attachment of the compound QR code may be i) printed at an arbitrary position together with the data obtained by the system reading the OCR, ii) the system prints the compound QR code on a sticker, etc., and the original document or printed document It may be attached to the iii) If the original document has a predetermined area (near or inside the document) for printing the composite QR code, the system can obtain the original document (superimposed printing on the original document) or the OCR The composite QR code may be printed in the corresponding area of the print document based on data.
  • the described information and further information can be provided without using the Internet. can do.
  • the security is improved by the compound QR code.
  • the user can easily transmit and receive photos, sounds, texts, etc. by using the composite QR code without telling the other party the contact address in the e-mail address or the SNS.
  • a photo it is possible to store a high-quality photo, a voice of about 10 minutes, and text of tens of thousands of characters when browsing with a smartphone.
  • the latest still image compression technology (BPG, or JPEG XL as the next generation JPEG, etc.) can maintain the quality sufficient for facial image recognition.
  • the composite QR code corresponding to version 40 and 177 ⁇ 177 cells having the maximum amount of information of the printed QR code using a dedicated high resolution composite QR code reader information of about 24 KB, which is eight times larger Can be stored.
  • the user downloads and installs the compound QR code read-only application on the smartphone the display and reading of the compound QR code can be used on most smartphones, and thus the possibility of spread is extremely high.
  • the reading device reads the flickering time-series dot code by the compound QR code reader, processing can be performed at high speed by reading the QR code only once, and thereafter reading only the dot code.
  • the reading apparatus can track changes in the imaging position of the timing pattern and alignment pattern, and correct the detected dot position each time to read the dot code accurately.
  • the amount of information that can be stored in a dot code is about 0.85 K at a time, but dots in 2 to 3 seconds
  • the reading device can acquire the information amount of 20 KB or more by the time-series dot code and the color dot code which change the code about 24 times.
  • this is reproduced as photo data, when it is displayed on the reading smart phone, the user can view it as a sufficiently high quality image, and the display smart phone can also transmit text information exceeding 70,000 characters.
  • the system can transmit a large amount of information exceeding several hundred times the QR code by temporally changing the color dot code in combination with the time change of the time-series dot code. From this, the system can also transmit animation if the resolution and color depth are small and the scale is short. If the system changes the composite QR code in time, the electronic authentication may be performed only on the content stored in the first composite QR code. Furthermore, there may be a case where the content part is not electronically authenticated. These processes may be applied not only to animation but also to exchange of a large amount of text and high resolution images.
  • the user can immediately acquire various information from the composite QR code displayed on the poster print or the display as a signage.
  • the user acquires information using a wireless communication line, a wired communication line, a dedicated line, or a public line such as the Internet.
  • the user can obtain information free of charge anywhere, even without such communication environment, through reading of the composite QR code on various media.
  • the application is equipped with output functions such as translation and interpretation, various contents acquired with one compound QR code can be used by people around the world.
  • the medium is stored in the compound QR code formed on the medium so that the medium can identify texts of each language and a small amount of voice data and images, and the reading device reads the compound QR code from the medium to translate / interpret Even if it is not equipped with the function, it becomes possible to display text / image of necessary language and reproduce sound.
  • composite QR code is displayed on the display and time series dot code and color dot code are used, animation with small capacity can be similarly localized to data for each language and stored in composite QR code
  • users can acquire content in various countries without using the Internet or a translation application.
  • the photograph acquisition it is made to store the photograph of oneself taken in the photographing box such as Pricla (registered trademark) or ID photo in the compound QR code, and display the compound QR code on the display of the photographing box, By taking photos with a smartphone, you can get photo data.
  • Pricla registered trademark
  • ID photo ID photo
  • the compound QR code displayed on the display of the photographing box
  • the photos taken are personal information and may leak on the Internet, but the composite QR code can prevent the leak.
  • the system on the information providing side is a composite QR in which voice information is stored in various print media such as books, magazines, textbooks, picture books, catalogs, flyers, newspapers, posters, packages, stickers, prescriptions, etc. Printing and distributing the code allows the user to read on the smartphone and reproduce the sound.
  • voice information may be reproduced
  • the system on the information provider side can store not only voice but also information such as texts and images, and the user can acquire such information.
  • the application is equipped with output functions such as translation and interpretation, it will be possible to use various audio content acquired with one compound QR code in various countries of the world.
  • the system such as a smartphone can use the language desired by the user even if the application does not have a translation / interpretation function. It can play audio.
  • the system displays the composite QR code on the display and uses the time-series dot code and color dot code, it is possible to similarly store small size animation as data for different languages and store it in the composite QR code
  • the user can acquire the content of each country by reading the composite QR code with a portable terminal such as a smartphone.
  • the composite QR code is a print medium printed on the medium
  • the composite QR code may be generated by being imprinted on various media.
  • simple Braille may be formed as part of the dot code, and the stored information may be represented by Braille.
  • the user can exchange by displaying the compound QR code in which the character and the item were stored by own smart phone, and making it read with the smart phone of the other party to offer.
  • the system on the information provider side prints a composite QR code on at least one of the front or back side of a trading card or game card printed on the card surface in addition to characters and items, and a text unique to that card.
  • Information such as images, sounds, etc. may be stored so that the user can acquire the information.
  • the sender side system prints the composite QR code on the greeting card, it is possible to obtain a photograph, a moving image, a figure, a considerable amount of text, etc. obtained by photographing the sender at the destination.
  • the sender system may upload the information to be sent to the Internet into a composite QR code.
  • the user can print the composite QR code storing the information, the information from the sender can be acquired at the destination via the paper medium without using the Internet.
  • the printed composite QR code since the amount of information is limited, it can be said that moving pictures and high-resolution photographs are difficult.
  • the reading device can acquire a vast amount of information by the time-series dot code or color dot code which is changed with time
  • the application can be stored in the composite QR code, and the application can be installed easily without downloading. That is, it is possible not only to install applications even in environments where the Internet can not be used, but to continuously provide applications without expenses through various media (paper media, broadcast media, etc.) without being registered and operated in the cloud or server it can. You can develop a well-selling business model.
  • the fake QR code has caused a great deal of damage, such as fake online shopping and credit card information hacking.
  • an official issuing organization for compound QR codes when an official issuing organization for compound QR codes is provided and a user of compound QR codes (a user approved by the official issuing authority in advance) transmits data such as a URL to the official issuing authority, the compound digitally signed with the dot code
  • a QR code is generated and provided to the user.
  • the user prints and uses the composite QR code on a display together with a certification mark (the certification mark may be placed at the center of the QR code) indicating that the QR code is a composite QR code.
  • the official issuing agency provides the user with a composite QR code reading application free of charge. If the user has a certification mark, the application can read the composite QR code and determine authenticity.
  • the business model can be charged by i) compound QR code user approval procedure, ii) compound QR code issuance, iii) reading of compound QR code, advertisement cost when using the application, etc.
  • a composite QR code may be issued from an official issuing organization as a personal ID.
  • the personal ID composite QR code basic personal information such as the name, date of birth, address, and photograph of the individual is registered.
  • information on certificates such as credit card information, bank account, license and health insurance card may be registered.
  • the personal ID composite QR code reader may be provided only to a corporation approved by the official issuing organization, and the dedicated reader may be managed to ensure strict security tracking, such as usage records.
  • the system only needs confirmation by name, date of birth, address, photograph, etc. Therefore, after using, personal information is deleted immediately after using general-purpose compound QR code reader (application). It is sufficient to prevent leakage.
  • the management server MS1 generates a composite QR code
  • the user device UD1 executes composite QR code reading and authentication processing, but the above processing is based on the relationship between the management server MS1 and the user device UD1. It is not limited. That is, the composite QR code reading and authentication process may be performed between the management server MS1 and the content servers CS1, CS2, and the like. Further, the composite QR code reading and authentication process may be performed between the content server CS1, CS2 or the like and the user device UD1, UD2. The composite QR code reading and authentication process may be performed between the user device UD1 and the user UD2. That is, the composite QR code reading / authentication processing is any processing for authenticating the legitimacy of the information presented by the QR code in the composite QR code between the side providing the information and the side acquiring the data. Is also applicable.
  • the complex QR is obtained by comparing the hash value obtained by decrypting the electronic signature and the received hash value without using the public key. It is possible to determine the authenticity of the code.
  • FIG. 57 is a flowchart illustrating a method of generating a composite QR code for the authenticity determination by encoding the QR code data and the dot code data; and the encryption information of the data string formed by the dot code.
  • the processes of T111, T112, T113, and T114 for generating the composite QR code are the same as T71 to T74 of FIG.
  • the generated composite code is provided to the user device UD1 via, for example, the management server MS1.
  • FIG. 58 is a flowchart illustrating a compound QR code reading and authentication process.
  • the user device UD1 reads the composite QR code by the reading device (T121).
  • the user device UD1 calculates encoding information (example: hash value) by encoding means (example: hash function) using data for QR code and data for dot code as a data string, and transmits it to the authentication server ( T122).
  • the authentication server is, for example, a server device that can be accessed via a network, such as the management server MS1 and the content server CS1 illustrated in FIG.
  • the user device UD1 transmits the encryption information acquired from the dot code to the authentication server (T123).
  • the authentication server collates the coding information and the decoding information (T124). Then, when the encoding information and the decoding information match, the authentication server determines that the authentication by the composite code is successful, and carries out the corresponding processing (T125).
  • the process of T125 is the same as the process of T25, T44, T66, and T85, and thus the details thereof will be omitted.
  • the authentication server determines that the authentication by the composite code has failed, and notifies the user of the result (T126).
  • the management server MS1 codes the encryption information of the data string formed by the QR code data and the dot code data into a dot code to form a composite code.
  • the management server MS1 encodes the encryption information of the data string formed of the QR code data and the dot code data into a QR code, and the user device UD1 decrypts both of them. You may do it.
  • authentication performed by the authentication server may be performed using a secret key.
  • the encryption information of the data string formed of the QR code data and the dot code data is used.
  • the processing of processing example 1 to processing example 3 may be applied to online authentication.
  • the encrypted information of the QR code may be encoded into the dot code and applied to the on-line authentication by the authentication server.
  • the encrypted information of the QR code may be encoded into a QR code and applied to online authentication by the authentication server.
  • the dot code encryption information may be encoded into a QR code and applied to online authentication by the authentication server. Also, the dot code encryption information may be encoded into a dot code and applied to on-line authentication by the authentication server.
  • the encrypted information 1 of the QR code and the encrypted information 2 of the dot code may be respectively encoded into the dot code and the QR code and applied to online authentication by the authentication server.
  • the encrypted information 1 of the QR code may be encoded into a dot code
  • the encrypted information 2 of the dot code may be encoded into a QR code.
  • the encryption information 1 of the QR code may be encoded into the QR code
  • the encryption information 2 of the dot code may be encoded into the dot code.
  • the encrypted information of the QR code and the dot code may be encoded into the QR code.
  • FIG. 59 shows an example of processing for encoding the encoding information of the QR code and the dot code into the QR code.
  • encryption is not performed as in the process example 5.
  • the processes of T131, T132, and T133 for generating a composite QR code are the same as T91 to T93 in FIG.
  • the generated composite QR code is provided to the user device UD1 via, for example, the management server MS1.
  • FIG. 60 is a flowchart illustrating a compound QR code reading and authentication process.
  • the user device UD1 reads the composite QR code by the reading device (T141).
  • the user device UD1 sends, to the authentication server, a data string formed of the encoded information (eg, hash value 1) acquired from the dot code, and the read QR code data and the read dot code data.
  • Send (T142).
  • the authentication server encodes a data string formed of the QR code data read by the user device UD1 and the dot code data among the received data, and encodes information (eg, hash value 2).
  • the encoded information for example: hash value 1
  • the data string for example: hash value 2
  • the authentication server determines that the authentication by the composite code is successful, and executes the corresponding processing (T144).
  • the process of T144 is the same as the process of T25, T44, T66, T85, and T125, and thus the details thereof will be omitted.
  • the corresponding processing may allow the same processing as T25, T44, T66, T85, and T125 to the user apparatus UD1 or another server on the network accessed by the user apparatus UD1.
  • the authentication server determines that the authentication by the composite code has failed, and notifies the user of the result (T145). That is, in this case, the authentication server does not allow the user apparatus UD1 or another server on the network accessed by the user apparatus UD1 to perform the process performed in T145.
  • the encoding information is created by the secret encoding means and is electronically authenticated, encryption of the encoding information at the time of data creation is not necessary. That is, authentication is possible only with the hash value.
  • the electronic authentication based on server authentication in the process example 7 can be applied to all the following cases of the offline electronic authentication described in process example 1 to process example 3.
  • the encoded information of the QR code may be encoded into a dot code without encryption to create a composite code, which may be used for on-line authentication.
  • the encoded information of the QR code may be encoded into a QR code to create a composite code, which may be used for on-line authentication.
  • the dot code encoding information may be encoded into a QR code to create a composite code, which may be used for on-line authentication.
  • the dot code encoding information may be encoded into a dot code to create a composite code, which may be used for online authentication.
  • the encoded information of the QR code and the dot code may be encoded into the dot code and the QR code to create a composite code, which may be used for on-line authentication.
  • the encoded information of the QR code and the dot code may be encoded into the QR code and the dot code to create a composite code, which may be used for on-line authentication.
  • the encoded information of the QR code and the dot code may be encoded into a QR code to create a composite code, which may be used for on-line authentication.
  • the dark dot code (the second color dot code) and the dark cell (the second color dot code) formed in the bright color cell (first color cell) in the QR code and the QR code The processing of the at least one of the bright color dot codes (dot codes of the first color) formed in the cells of two colors (the first color dot code) with the composite QR code is exemplified.
  • a barcode may be used instead of the QR code. That is, a dot code including dark dots may be formed as a composite code by forming a barcode and a dark portion between dark patterns of the barcode. In addition, a barcode and a dot code including bright dots in the dark pattern portion of the barcode may be formed as a composite code.
  • a character string such as alphanumeric characters, kanji characters, katakana characters, hiragana characters, etc. may be simply used as a composite code. That is, a dot code including dark dots may be formed in a light color portion between dark color patterns of character strings such as alphanumeric characters, kanji characters, katakana characters and hiragana characters to make a composite code. Also, a dot code including bright dots may be formed in a dark color pattern of a character string such as alphanumeric characters, kanji characters, katakana characters, hiragana characters, etc., to form a composite code.
  • a dark color pattern of a character string such as alphanumeric characters, kanji characters, katakana characters, and hiragana characters is formed with an ink that does not absorb ordinary infrared light, and the dot code is infrared light such as carbon black. You may form with the ink to absorb. Then, the dark color pattern of the character string may be read by visible light, and the dot code may be read by infrared light.
  • the data encoded by the barcode may be digitally signed and encoded by the dot code, as in the fourth embodiment.
  • the reader can verify the legitimacy of the information presented in the bar code or string. If the composite code is formed of a barcode and a dot code, a barcode reader and a dot code reader may be used. In the case of forming a character string and a dot code, an optical character recognition (OCR) device for reading the character string and a dot code reader may be used.
  • OCR optical character recognition
  • Such a composite code is not necessarily limited to the QR code, and can be defined as follows.
  • the composite code comprises a first code patterned with two or more identifiable colors, A composite code pattern comprising: a second code having one or more marks distinguishable from a first color of the pattern; The second code is defined as a compound code pattern including specific information corresponding to at least a part of the first code.
  • the first code in which a pattern is formed by two or more distinguishable colors is, for example, a bar code or a character string such as alphanumeric characters, kanji characters, katakana characters, and hiragana characters.
  • the two or more colors are, for example, barcodes, or colors (one or more) of character strings such as alphanumeric characters, kanji characters, katakana characters, hiragana characters, etc., and base colors (colors of medium surface).
  • the second code in which one or more marks are arranged is the dot code exemplified in the first to fifth embodiments.
  • the second code includes the specific information corresponding to at least a part of the first code, as in the fourth and fifth embodiments, the bar code in which the second code is the first code, Alternatively, it is exemplified that data represented by a character string such as alphanumeric characters, kanji characters, katakana characters and hiragana characters is digitally signed.
  • Embodiment 9 Modification of Digital Signature
  • the processes of Embodiments 6 to 8 are not limited to such processes. For example, in various authentication processing, authenticity judgment processing, falsification detection processing, etc. as described above, in addition to authentication with a secret key and a public key, coding information generated from QR code etc. and generated from coding information It may be determined that the authentication is successful by determining that the digital signature has a predetermined relationship.
  • DSA Digital Signature Algorithm
  • elliptic curve DSA elliptic curve
  • El Gamal signature elliptic curve
  • the entity user apparatus UD1, authentication server, etc.
  • the entity that executes authentication determines whether the encoded information and the decoded information match, as in T24 of FIG. Then, it is determined whether or not the encoded information that is the basis of the digital signature and the digital signature have a predetermined relationship.
  • the area and orientation of the QR code are determined by the position detection pattern (finder pattern), and the XY coordinate value of the center of each cell is calculated by the timing pattern.
  • the QR code is deformed.
  • the XY coordinate value at the center of each cell calculated by the timing pattern may deviate beyond the allowable limit, and coordinate values in adjacent cells may be obtained.
  • the alignment pattern is used to correct the coordinate value to improve the accuracy of the XY coordinate value at the center of each cell. Thereafter, it is determined whether the position of the coordinate value or the area near the predetermined area is light or dark, and the numerical data stored in the QR code is acquired.
  • the accuracy of the central coordinate value may be within the cell where the brightness of the cell can be determined, and may not necessarily be at the center of the cell.
  • the arrangement of the marks can be properly recognized.
  • a degree of accuracy is desired. Therefore, in order to improve the accuracy, it is desirable to correct the coordinate value at the center of the cell of the first code by a predetermined method or separately obtain it from the shape and arrangement of the marks of the second code.
  • FIG. 61 shows an embodiment in which eight arrangement candidate positions of information dots in a cell are arranged as shown in FIG.
  • FIG. 62 is a diagram illustrating the arrangement position of dots in one cell. 8 bit numerical data can be defined depending on whether or not 8 dots are arranged. Since the dots are arranged concentrically at regular intervals (every 45 degrees in the figure) on the concentric circles, printing with a high resolution printer of about 2400 dpi or more is necessary to ensure the accuracy of the arrangement position. Make it FIG.
  • FIG. 61 shows an embodiment showing a part of a composite code, in which information dots are arranged only in bright cells to form dot codes. Although not shown, information dots may be arranged in dark cells, or information dots may be arranged in both.
  • FIG. 63 is an example of an image in which the coordinate position of the center of the cell obtained according to the specifications of the QR code is deviated from the original center of the cell. In the example of FIG. 63, it is understood that although the position indicated by the ten mark is the coordinate position determined as the center of the cell by the first code (QR code in the figure), it is offset from the center of the cell. In this embodiment, a method of correcting this shifted position to a proper center coordinate value of a cell indicated by a cross will be described.
  • FIG. 64 is set with the direction of the second code (as the rule of the second code, the direction may be the same as the first code) and the distance and direction from the corrected cell center position P0
  • FIG. 7 is a diagram showing bounding boxes centered on virtual points P1 to P8 at the same size as the dot size. This virtual point is an arrangement candidate position of the information dot in accordance with the second code rule.
  • the reading device determines whether or not the center coordinate value of the dot is included in the bounding box, and acquires numerical data.
  • the size of the bounding box may be larger than the size of the dot if it does not overlap with the adjacent bounding box. Even if the printing accuracy, the photographing environment, and the like are poor and the accuracy of the central coordinate values of the dots of the captured image is poor, recognition is possible. However, the increased size is more likely to be affected by noise (error printing) due to ink flying or the like. Of course, if the accuracy of the central coordinate values of the acquired dots is sufficiently ensured, the size of the bounding box may be smaller than the size of the dots.
  • FIG. 65 shows an example of a bright cell in which a dot code is formed, for example, in which a binary number of 01011001 is defined by raising a digit clockwise starting from the top dot placement candidate position.
  • 66 and 67 each show an example of an image obtained by imaging the cell with a C-MOS sensor or the like.
  • Imaging means that a captured image is recorded in a storage medium such as a frame buffer or an operation of recording. The image is shown with 65 shades of light and dark (including light and black) to simplify the description. Usually, in the case of imaging only by shading, it is often recorded in 8 bits, that is, 256 stages. In color, images are often captured in 16.7 million colors with R, G, and B each at 8 bits.
  • numerals 1 to 15 attached to the vertical axis are numbers indicating the pixel rows (scanning lines) of the image.
  • a gray value less than a predetermined absolute threshold (for example, 255 is white and 0 is black, assuming that the absolute threshold is 60, a gray value of 60 or less).
  • the portion of may be determined to be a dot.
  • the absolute threshold value be, for example, 20% to 40% of the average value of gray values in a predetermined range excluding the dots of light color cells.
  • FIG. 70 shows an example of processing for binarizing an image from the relationship between the gray level value obtained from the image and the absolute threshold value.
  • the vertical axis represents, for example, the brightness value (gray scale value) of the pixel corresponding to the fourth row of pixels from the bottom in the image of FIG. 66 (scan line 12), and the horizontal axis represents the horizontal direction
  • numbers with numbers attached to ⁇ marks are codes for identifying each pixel.
  • the pixels (4), (10) and (11) are binarized and become dark. It is determined as a dot as in the fourth row of pixels from the bottom of 69.
  • the threshold value as the relative threshold value for the rate of change of the gradation value from the bright part to the dot part.
  • (3) 102
  • (5) 102
  • (3), (4), (5) are binarized in black
  • grayscale pixels are binarized in black. Note that if pixels in which the gray value falls below the change rate continue in the scanning line direction after the generation of the pixels binarized in black, the pixels are binarized in black. Assuming that the gradation value of the target pixel is Bi, there are two determination methods: i) ⁇ B i-n > B i and B i ⁇ B i + n , ii) ⁇ B i-n > B i or B i ⁇ B i + n is there. n indicates to compare the target pixel with n pixels apart.
  • FIG. 68 shows the result when the threshold is sweetened (when the absolute threshold is increased or the relative threshold is decreased).
  • FIG. 69 shows the result of the case where the threshold is strict (when the absolute threshold is lowered and the relative threshold is increased).
  • the central coordinate value of the information dot is contained in the bounding box, and the reader (see Embodiments 1 to 6) is defined by the dot code. You can get numerical data.
  • the central coordinate value D C (Xc, Yc) of the dark (or light) dot is calculated from the center of the dot formed from the binarized dark (or light) pixel, and the dark (or light) dot
  • D i 1 ⁇ n
  • FIG. 73 shows an example in which the arrangement candidate positions of the information dots in the cell are set as in FIG. Also in FIG. 73, as shown in FIG. 62, information dots are arranged only in bright cells. However, in FIG. 73, a dot code is formed by arranging reference dots only in dark cells. Although not shown in FIG. 73, information dots may be arranged in dark cells and reference dots may be arranged in bright cells. In FIG. 73
  • the bright reference dots arranged in the dark cell can be easily searched for bright dots from continuous dark areas around the central coordinate value in the dark cell calculated from the first code. Even if the central coordinate value in the dark cell calculated from the first code is not used, it may be searched whether the bright dot exists in the continuous area of the dark area.
  • FIG. 74 shows an example of an image in which the coordinate position determined as the center of the cell by the first code is shifted from the original center of the cell.
  • the position indicated by a ten is the coordinate position determined as the center of the cell by the first code, it can be seen that it is offset from the center of the cell.
  • a method of obtaining an appropriate center coordinate value of a cell indicated by a cross mark from the shifted position will be described.
  • the reader searches for the position of the reference dot placed in the dark cell.
  • the reader searches a region having a high density of reference dots using a predetermined threshold from the surrounding dark cells starting from the central coordinate value of the dark cell obtained by the first code Alternatively, the center position of the area may be determined and used as the center coordinate value of the reference dot.
  • the central positions of the reference dots are connected by virtual straight lines in the vertical and horizontal directions, and the coordinates of the intersections are set as the central coordinate values of the bright cells.
  • the bright cells having no intersection may be obtained by interpolation or extrapolation from other intersections obtained in the other vertical and horizontal directions.
  • FIG. 76 shows an embodiment in which the arrangement candidate position of the information dot in the cell is set as in FIG. 62, and the reference dot is arranged at the center.
  • FIG. 75 shows an example showing a part of the composite code, in which the reference dots and the information dots are arranged only in the bright color cells to form dot codes.
  • reference dots and information dots may be arranged in dark cells.
  • FIG. 77 shows an example of an image in which the coordinate position determined as the center of the cell by the first code is deviated from the original center of the cell.
  • the position indicated by the ten mark is the coordinate position determined as the center of the cell by the first code, it can be seen that it is offset from the center of the cell.
  • a method of obtaining an appropriate center coordinate value of a cell indicated by a cross mark from the shifted position will be described.
  • the reading device searches for the position of the reference dot arranged in the bright cell.
  • the reading device arranges the dots in the vicinity of the central coordinate value of the bright color cell determined by the selected first code with the dots arranged in other bright color cells to determine whether it is a reference dot. Determine from the relationship. That is, the reading device may determine whether or not the dots are linearly arranged from the dots at predetermined intervals. If this condition can not be satisfied, the reading device repeatedly determines whether the above condition is satisfied with the next nearby dots and recognizes the reference dot.
  • the reading device may calculate the cell center coordinate value by the method described in FIG. 63, and may use the dot closest to the coordinate value as a reference dot.
  • the reference dot may be different from the information dot in size, shape, color, and arrangement pattern (a plurality of reference dots may be used) without the above-described correction of the cell center coordinate value. The reader can easily recognize the reference dot.
  • FIG. 78 is set by the direction of the second code (the rule of the second code may be the same as that of the first code) and the distance and direction from the center position P0 of the reference dot
  • FIG. 7 is a diagram showing a circular bounding box centered on virtual points P1 to P8 at the same size as a dot. This virtual point is an arrangement candidate position of the information dot in accordance with the second code rule.
  • the reading device determines whether or not the central coordinate value of the dot is included in the bounding box, and acquires numerical data.
  • the specifications of the bounding box are the same as in FIG.
  • FIG. 79 shows an example showing part of a composite code, in which reference dots are arranged in light cells and dark cells, and information dots are arranged only in light cells to form dot codes.
  • reference dots may be arranged in dark cells, or information dots may be arranged in both.
  • the reader can easily retrieve light dots from successive dark areas around the central coordinate value in the dark cell calculated from the first code.
  • the reading device may search for the presence of a bright dot in an area where the dark area is continuous without using the central coordinate value in the dark cell calculated from the first code.
  • FIG. 80 is an example of an image in which the coordinate position determined as the center of the cell by the first code is offset from the original center of the cell.
  • the position indicated by the ten mark is the coordinate position determined as the center of the cell by the first code, it can be seen that it is offset from the center of the cell.
  • the reading device first searches for the position of the reference dot placed in the dark cell.
  • the reader searches a region having a high density of reference dots using a predetermined threshold from the surrounding dark cells starting from the central coordinate value of the dark cell obtained by the first code Alternatively, the center position of the area may be determined and used as the center coordinate value of the reference dot.
  • the central positions of the reference dots are connected by virtual straight lines in the vertical and horizontal directions, and the coordinates of the intersections are set as the central coordinate values of the bright cells.
  • the bright cells having no intersection may be obtained by interpolation or extrapolation from other intersections obtained in the other vertical and horizontal directions.
  • the reading device sets the dot in the vicinity of the central coordinate value of the bright cell as the position of the reference dot arranged in the bright cell.
  • the reference dots described above are not necessarily the dots arranged at the center of the cell, but may be arranged anywhere in the cell as long as they can be determined as the reference dots.
  • FIG. 82 divides the bright color cell into four vertically and horizontally to generate 16 divided cells, and arranges the arrangement candidate positions of the information divided cells at 12 locations except for the four central divided cells, and further adds the bright color cell Is an embodiment in which a reference dot is arranged at the center of.
  • a reference dot is arranged at the center of.
  • a dark cell (or a dark cell) formed in a divided area (also referred to as a divided cell) which divides a bright cell (or dark cell) and does not touch the reference dot.
  • a divided area also referred to as a divided cell
  • the divided dark (light-colored for dark cells) area is called an information divided cell.
  • FIG. 81 shows an example showing a part of the composite code, in which the reference dot and the information division cell are arranged only in the bright color cell to form the division cell code.
  • reference dots and information division cells may be arranged in dark cells.
  • FIG. 83 is an example of an image in which the coordinate position determined as the center of the cell by the first code is deviated from the original center of the cell.
  • the position indicated by the ten mark is the coordinate position determined as the center of the cell by the first code, it can be seen that it is offset from the center of the cell.
  • the method of obtaining the proper center coordinate value of the cell indicated by the cross mark from the shifted position is as described in FIG.
  • FIG. 84 is an imaginary set by the second code direction (the second code may have the same direction as the first code) and the distance and direction from the center position P0 of the reference dot. It is a figure showing a rectangular bounding box centered on points P1 to P8 by about 50% of the size of the information division cell. This virtual point is an arrangement candidate position of the information division cell in accordance with the rule of the second code.
  • the reading device determines whether or not the dark-colored area having a predetermined ratio indicated by the information division cell is included in the bounding box, and acquires numerical data. The method of determining the dark area is the same as that described with reference to FIGS.
  • the reading device sets an absolute threshold value, and determines that it is an information division cell if the number of gray scale pixels below the absolute threshold value exceeds a predetermined ratio with respect to the number of pixels forming the bounding box.
  • the predetermined ratio is preferably about 50 to 75% or more in consideration of the printing deviation of about 20 to 30% with respect to the size of the reference dot and the information division cell according to the printing accuracy.
  • the reading device sets the size of the bounding box so as to be separated by a predetermined distance between the bounding boxes so that one information division cell is not included in the adjacent bounding boxes.
  • the size is set to 50% of the size of the information division cell, but it is desirable to set in consideration of the resolution of the camera at the time of compound code shooting and the like. If the resolution is high, the reader may change the size of the bounding box at the time of recognition to increase the recognition rate of the information division cell.
  • FIG. 86 a bright color cell is divided into five parts vertically and horizontally to generate 25 divided cells, and the placement candidate positions of the information divided cells are arranged 16 places except for the nine divided cells in the center, and the reference division at the center This is an embodiment in which cells are arranged.
  • a bright cell or dark cell
  • a reference is made to a dark (light for dark cells) area formed in any of the divided areas.
  • a divided dark (light for dark cells) area defining the reference point when defining a point is called a reference divided cell.
  • the area in which cells are divided and information is defined by other areas is called an information divided cell.
  • FIG. 85 shows an example showing a part of the composite code, in which the reference divided cell and the information divided cell are arranged only in the bright color cells to form the divided cell code.
  • reference divided cells and information divided cells may be arranged in dark cells.
  • FIG. 87 is an example of an image in which the coordinate position determined as the center of the cell by the first code is deviated from the original center of the cell.
  • the position indicated by the ten mark is the coordinate position determined as the center of the cell by the first code, it can be seen that it is offset from the center of the cell.
  • the method of obtaining the proper center coordinate value of the cell indicated by the cross mark from the shifted position will be described below.
  • the reading device first searches for the position of the reference divided cell placed in the bright cell. As a search method, the reading device determines whether a divided cell in the vicinity of the central coordinate value of the bright color cell obtained by the selected first code is a reference divided cell or not in another bright color cell.
  • the reading device may determine whether or not the divided cells are linearly arranged at predetermined intervals from the divided cells. If this condition can not be satisfied, the reading device repeatedly determines whether the above condition is satisfied in the next neighboring divided cell and recognizes the reference divided cell.
  • the cell center coordinate value may be calculated by the method described in FIG. 66, and the cell closest to the coordinate value may be used as the reference divided cell.
  • FIG. 88 is set by the direction of the second code (as the rule of the second code, the direction may be the same as the first code) and the distance and direction from the center position P0 of the reference divided cell
  • FIG. 17 is a diagram showing a rectangular bounding box centered on virtual points P1 to P8 by about 50% of the size of the information divided cell. This virtual point is an arrangement candidate position of the information division cell in accordance with the rule of the second code.
  • the reading device determines whether or not the dark-colored area having a predetermined ratio indicated by the information division cell is included in the bounding box, and acquires numerical data.
  • the determination method of the dark area is the same as that described in FIG.
  • the reading device sets an absolute threshold value, and determines that it is an information division cell if the number of gray scale pixels below the absolute threshold value exceeds a predetermined ratio with respect to the number of pixels forming the bounding box.
  • the reading device desirably has a predetermined ratio of about 50 to 75% or more in consideration of printing deviation of about 20 to 30% with respect to the size of the reference dot and the information division cell according to the printing accuracy.
  • the reading apparatus sets the size of the bounding box so as to be separated by a predetermined distance between the bounding boxes so that one information division cell is not included in the adjacent bounding boxes.
  • the reading device is set to 50% of the size of the information division cell, but it is desirable to set in consideration of the resolution etc. of the camera at the time of compound code shooting. If the image to be acquired has a sufficiently high resolution, the reading device may make the size of the bounding box variable at the time of recognition to increase the recognition rate of the information division cell.
  • FIG. 90 shows an embodiment in which a bright color cell is divided into five parts in the vertical and horizontal directions to generate 25 divided cells, and 24 division candidates of information divided cells are arranged excluding one central divided cell.
  • printing is possible with a 600 dpi printer. Needless to say, printing can be performed with a printer having a resolution higher than 600 dpi.
  • FIG. 89 shows an example in which a part of the composite code is shown, and the divided cell code is formed by arranging the information divided cell only in the bright color cell and the reference divided cell only in the dark color cell.
  • the information division cell may be arranged in a dark cell and the reference division cell may be arranged in a bright cell.
  • the reader can easily retrieve the bright divided cells from the continuous dark area around the central coordinate value in the dark cell calculated from the first code and the light reference divided cell arranged in the dark cell.
  • the reader may search for the presence of a bright split cell in a region where the dark area is continuous without using the central coordinate value in the dark cell calculated from the first code.
  • FIG. 91 is an example of an image in which the coordinate position determined as the center of the cell by the first code is deviated from the original center of the cell.
  • the position indicated by the ten mark is the coordinate position determined as the center of the cell by the first code, it can be seen that it is offset from the center of the cell.
  • the reading device first searches for the position of the reference divided cell placed in the dark cell.
  • the reader uses a predetermined threshold from the dark cells in the periphery starting from the central coordinate value of the dark cell determined by the first code, and uses a region with high lightness and darkness of the reference divided cell.
  • the center position of the area may be obtained by searching, and may be used as the center coordinate value of the reference divided cell.
  • the reading device connects the center positions of the reference divided cells with virtual straight lines in the vertical and horizontal directions, and sets the coordinate value of the intersection as the central coordinate value of the bright cell.
  • the reading device may be obtained by interpolating or extrapolating from other intersections obtained in the other vertical and horizontal directions to a bright cell having no intersection.
  • FIG. 92 shows an imaginary point P1 set by the direction of the second code (the rule may be the same as the first code as a rule of the second code) and the distance and direction from the cell center position P0
  • FIG. 16 is a diagram showing a rectangular bounding box centered on PP24 at about 50% of the size of the information divided cell. This virtual point is an arrangement candidate position of the information division cell in accordance with the rule of the second code.
  • the reading device determines whether or not a dark area of a predetermined rate indicated by the information division cell is included in the bounding box, and acquires numerical data.
  • the determination method of the dark area and the specifications of the bounding box are as described in FIG. 86 to FIG.
  • a dark reference divided cell may be arranged at the center of the bright cell.
  • the reading device is a position of the reference divided cell in which the dark divided cell in the vicinity of the central coordinate value of the bright cell determined by the reference divided cell arranged in the dark cell is located in the light cell, from the center position of the reference divided cell.
  • the numerical data may be acquired as a rectangular bounding box centered on the virtual points P1 to P24 set by the distance and the direction. In that case, the number of information division cells that can be arranged in a bright color cell is reduced by one, and the amount of information is reduced.
  • FIG. 93 shows an embodiment in which the information divided cell candidate arrangement positions in FIG. 90 are arranged at twelve places so as not to be adjacent vertically and horizontally. As a result, when the information division cell is recognized at the position where it does not exist originally in the bounding box of FIG. 94, an error occurs.
  • the number of error correction codes can be reduced, and the amount of data storage can be increased. Furthermore, as shown in FIG. 95 to FIG. 102, if the bounding box is moved and the divided cells are not recognized at the positions where the divided cells originally do not exist, the bounding box is correctly set, and numerical data You just need to get it.
  • the moving amount of the bounding box obtained here can be used in other cells. Note that the movement of the bounding box in FIGS. 95 to 102 may be further moved stepwise.
  • the information division cell candidate arrangement positions in FIG. 90 may be any arrangement as long as the information division cell candidate arrangement positions are not adjacent.
  • the composite code generation process in the tenth embodiment is the same as the first to ninth embodiments except that a reference point is set in a cell. Therefore, in the composite code generation process in the tenth embodiment, the processes illustrated in FIG. 47, FIG. 49, FIG. 51, FIG. 53, FIG. 55, FIG. However, in these processes, the management server MS1 or the like may set a reference point to a desired cell (that is, a cell for which a reference point should be set). The management server MS1 or the like may include the reference point in the second code, for example, at the time of generation of the second code.
  • the virtual points P1 to P8 which are the centers of the bounding boxes, are defined by the geometrical arrangement relationship according to the distance from the cell center position P0 and the direction. This geometrical arrangement relationship is recorded in the storage medium of the compound code reader or software for acquiring numerical data from the second code.
  • FIG. 103 as shown in the bright colored cell at the upper left of the composite code in FIG. 61, the geometrical arrangement by the cell center position P0 and the virtual points P1 to P8 with a plurality of reference dots in the cell at the predetermined position.
  • a relationship may be formed and recognized.
  • the reference pattern can be acquired directly from the image obtained by imaging the composite code with the camera, the bounding box can be set more accurately, and numerical data can be acquired.
  • the reference pattern may be formed in both dark cells (light reference dots) and light and dark colors.
  • the first code is a QR code, it may be arranged in a predetermined cell in which a position detection pattern (finder pattern), a timing pattern, an alignment pattern, and format information are formed.
  • 0.169 ⁇ 0.169 mm which is the minimum cell size of the QR code
  • the proportion of dots in the cell exceeds 33%, which causes trouble in reading the QR code.
  • the reference pattern is divided into virtual points in the vertical direction and virtual points in the diagonal direction, and as shown in FIG.
  • These two patterns may be combined and used as a reference pattern.
  • the reference pattern may be divided into three or more types to form a pattern in a plurality of cells, or arranged in at least one of a dark cell (light reference dot) or a light cell (dark reference dot). It is also good.
  • a numerical value data may be acquired by setting a corresponding bounding box for a cell in which information dots of different arrangement patterns corresponding to each of the plurality of different patterns are set as independent reference patterns.
  • FIG. 105 shows an embodiment in which a reference pattern is formed on the composite code of FIG. 77, since no dot is arranged at the center of a bright cell in which information dots are arranged, the reference pattern can be easily recognized. Also, when forming a reference pattern in a dark cell in which a bright reference dot is disposed at the center, the reference pattern can be easily recognized by the number of reference dots.
  • the reference pattern may be formed in both dark cells (light reference dots) and light and dark colors.
  • FIG. 106 shows an embodiment in which a plurality of reference patterns are arranged at predetermined intervals of bright and / or dark cells of the composite code of FIG.
  • the bounding box of the second code formed in the cells in the periphery is set with the plurality of imaged reference patterns.
  • numerical data can be acquired more accurately.
  • the information dot defining the numerical data can easily recognize the reference pattern because the center reference dot is not arranged since the center position P0 of the cell can be accurately obtained.
  • the reference dots When the reference dots are arranged, they may be formed in cells of a predetermined arrangement. In any of the embodiments shown in FIGS. 61 to 78 and 79 to 92, a plurality of reference patterns may be arranged at predetermined intervals of cells.
  • a reference pattern is formed by light (or dark) reference divided cells whose center positions are P2, P5, P8, and P11. Interpolation calculation of the center position of P1, P3, P4, P6, P7, P9, P10, P12 by acquiring the center coordinate value of P2, P5, P8, P11, and bounding around the virtual points P1 to P12 Box can be set. Also, a reference pattern may be similarly formed in the composite code of FIG. 87 by replacing the central reference dot with the reference divided cell.
  • the sizes of the reference dots and / or reference divided cells forming this reference pattern are made identical or easily recognizable, and only the intervals are multiplied by a predetermined multiple (similarly enlarged) to obtain their central coordinate values Then, by dividing the interval by a predetermined number (similar reduction), a reference pattern of an appropriate arrangement is obtained, and the geometrical relationship between the distance from the cell center position and the virtual point to be the center of the bounding box according to the direction. The placement relationship can be obtained with high accuracy. Needless to say, the same configuration is possible in any of the embodiments shown in FIGS. 61 to 78 and 89 to 92.
  • FIG. 108 shows an embodiment in which two types of patterns are formed by the five brightly colored reference divided cells in the first and second dark cells at the upper right of the decoded pattern of FIG.
  • reference divided cells are formed in the center and vertically and horizontally
  • reference divided cells are formed in the central and diagonal directions.
  • these two patterns are synthesized and interpolated based on P0 and P10, P12, P14, P16, P18, P20, P22 and P24, and P1 to P8, P9, P11, P11, P13, P15, P17. , P19, P21 and P23, and bounding boxes may be set as reference patterns to acquire numerical data.
  • the above-described binarization process may use any method, and the pattern forming the reference pattern is at least one of the dark cell (light reference divided cell) and the light cell (dark reference divided cell).
  • the proportion of the reference divided cells in the pattern forming the reference pattern in the cells is 0.045 2 when the side length of the divided cells is 0.045 mm when the cell size is 0.212 ⁇ 0.212 mm.
  • ⁇ 5 / (0.212 ⁇ 0.212) 0.225 (22.5%), which is 33% or less, and there is no problem in reading the QR code.
  • the area surrounded by the grid lines represents the size and shape of the cell in the vicinity of the position, and the deformation state of the cell is the distance from the cell center position and an imaginary point serving as the center of the bounding box according to the direction.
  • the arrangement of the bounding box may be corrected by reflecting it on the geometrical arrangement relationship, and may be used to recognize information dots or information divided cells near the position. As a result, even if the QR code is deformed and imaged and the degree of deformation changes for each area, the correction is performed by the shape of the grid for each area, and the composite code reader does not form a reference pattern on the composite code.
  • the numerical data may be recorded in software for acquiring numerical data from the second storage medium or the second code, and may be corrected using a geometrical arrangement relation.
  • the correction of the arrangement of bounding boxes by grid lines may be used in combination with other embodiments. Furthermore, as a means of generating grid lines, boundaries of bright and dark cells may be detected and grid lines may be drawn along the boundaries. However, if the captured image at the time of shooting the print accuracy or QR code is rotated or deformed, the boundary portion of the pixel showing light and dark will be uneven, so they are smoothed or averaged to make grid lines It is desirable to form.
  • numerical data may be defined in a cell in which a mark indicating a reference point is formed by at least one of the shape, size, color, orientation, and arrangement pattern of a mark indicating a reference point.
  • ⁇ Setting of second code direction> In obtaining numerical data of the second code, an embodiment has been described on the assumption that the orientation of the first code is used. However, if the optical axis of the camera is not perpendicular to the medium surface on which the QR code is formed (if the camera is tilted with respect to the medium) or if the medium is curved, the QR code is deformed. The degree of deformation changes for each region, and the orientation for each cell may also change. Also, only the second code may be obtained regardless of the first code. Therefore, an embodiment in which the direction is set by the second code itself will be described.
  • FIG. 109 shows an embodiment in which a direction dot is added above a predetermined reference dot of the composite code of FIG. 74 to set the direction of the second code.
  • the arrangement of the direction dots may be in any direction with respect to the reference dots as long as the correspondence relationship with the direction of the second code is defined in advance.
  • the identification of the direction dot and the reference dot can be easily determined by whether or not they are at the center of the cell, or whether they are located on a grid line formed by connecting the reference dots.
  • the direction dots may be arranged in any way, but by arranging them at predetermined intervals, the degree of deformation of the captured QR code is reflected to correct the cell direction and correct numerical data Achieve acquisition.
  • the geometrical arrangement relationship between the center of the cell and the virtual point that is the center of the bounding box is rotated according to the distance from the cell center position to correct the arrangement of the bounding box.
  • the reference dot at the center of the cell in which the above direction dot is formed may be deleted.
  • the orientation can be easily recognized by positioning the direction dot above the intersection of the grid lines formed by connecting the reference dots.
  • the direction of the second code may be set by forming a direction dot at a predetermined position in the cell.
  • the orientation may be set by the arrangement of two or more dots whose orientation can be recognized.
  • the setting of the direction may use divided cells instead of the direction dot, or may use a mark whose direction can be set according to the shape of the mark. Further, in the formation of the information dots and the information division cells, a specific arrangement which can recognize the direction may be set.
  • FIG. 110 shows an embodiment in which the orientation of the second code is set by changing the arrangement of the reference dots constituting the reference pattern provided in the composite code of FIG.
  • two types of patterns formed by five reference dots in the upper-right first-stage and second-stage dark-colored cells are non-rotationally symmetrical and can be set in direction. Since the reference pattern is formed by combining these two types of patterns, it becomes an embodiment in which a direction function is added to the reference pattern.
  • the embodiment of FIGS. 109 and 110 can be formed in at least one of bright and dark cells and can be used in combination with other embodiments.
  • Computer readable recording medium A program that causes a computer or other machine or device (hereinafter referred to as a computer or the like) to realize any of the above functions can be recorded in a recording medium readable by the computer or the like. Then, the function can be provided by causing a computer or the like to read and execute the program of the recording medium.
  • a recording medium readable by a computer etc. is a recording medium which can store information such as data and programs electrically, magnetically, optically, mechanically or chemically and read from a computer etc.
  • those removable from the computer etc. include, for example, memory such as flexible disk, magneto-optical disk, CD-ROM, CD-R / W, DVD, Blu-ray disk, DAT, 8 mm tape, flash memory etc.
  • memory such as flexible disk, magneto-optical disk, CD-ROM, CD-R / W, DVD, Blu-ray disk, DAT, 8 mm tape, flash memory etc.
  • a recording medium fixed to a computer or the like there are a hard disk, a ROM (Read Only Memory), and the like.
  • SSD solid state drive
  • the cells are formed in an array, and at least the cells are provided with predetermined regions having colors that can identify the cells, and at least the cells in the first code that defines data by the colors of the predetermined regions.
  • An area excluding a predetermined area is provided as a specific cell for forming a part of the second code, and an identifiable mark is provided in the area, and the shape, size, orientation, color, arrangement pattern, etc. of the mark
  • the first code-specific cell is also included, and the first code and the second code have the same orientation.
  • the marks used in this embodiment include the subcells capable of setting information used in the first embodiment, dot patterns defining information, information dots used in the tenth embodiment, information divided cells, and the like.
  • the data is defined by identifying the contrast of the cell by the dominant color of the cell, but in the example shown below, the data is mainly disposed in the central part of the cell Data is acquired by identifying the color of the predetermined area to be used as the color of the cell.
  • a reference point is disposed at the center of a predetermined area or at the center of a cell as a virtual point defining cell position information with coordinate values, and the reference point or a small area including the reference point (at least a part of the predetermined area)
  • the color of the cell is identified by the color of.
  • the central portion may be set as a predetermined area, and the color of the cell may be changed so that the mark can be identified.
  • various marks in the first, fifth and tenth embodiments can be used in combination with the present embodiment.
  • the reference point may be located at any position as long as it is disposed in the predetermined area.
  • the direction of the code may be different between the first code and the second code, and the shape, size, direction, etc. of the predetermined area, mark, section, etc., if it can be formed (displayed, printed, etc.) and read.
  • the color, the number, the arrangement position, etc. may be arbitrary.
  • a division is an area
  • the element for correcting the position of the cell of the composite code is preferably in the same code, but may be anywhere, including the outside of the code. Furthermore, when the cells are divided into a plurality of cells, the cells may be arranged as separate reference cells so that the cells do not contact the cells. In Examples 1 to 16 shown below, constituent elements may be incorporated in each other and used in any combination. Furthermore, the present embodiment may incorporate and use the elements constituting the first to tenth embodiments, and the first to tenth embodiments may incorporate and use the elements constituting the present embodiment.
  • FIG. 111 is an example of a part of a composite code.
  • the cells forming the composite code are arranged in an array, but in FIG. 112, in order to make the configuration of the composite code easy to understand, in the description of FIG. 3 and subsequent figures, as a mark for defining information in the cell.
  • a cell that forms a second code with a compound code that defines numerical information using names such as information dots, information division cells, information settable subcells, and dot patterns that define information is referred to as a specific cell.
  • Sections 1-0 (1-00 and 1-01) for each one specific cell are indicated by solid lines. This solid line is not drawn in the actual composite code.
  • the central circular predetermined area 2-0 is formed of a dark area 2-01 (black) or a light area 2-00 (white), and areas 2-1 (2-10 and 2) excluding the predetermined area. -11) are all bright areas 2-10.
  • the boundary of the predetermined area 2-00 (white) of the cell and the area 2-10 (white) excluding the predetermined area is clearly indicated by a circular dotted line. This dotted line is not drawn.
  • the predetermined area 2-0 (2-00 and 2-01) is desirably located at the center of the specific cell, but may be anywhere in the specific cell as long as it can be formed and read. Further, the number of predetermined areas 2-0 (2-00 and 2-01) may be plural as long as they have the same color.
  • the color of the cell is identified by recognizing the color of the reference point or the small area (at least a part of the predetermined area) including the reference point.
  • the data of the first code is defined by two colors of a black dark area 2-01 and a white bright area 2-00 surrounded by a dotted line. It does not have to be white and black as long as the colors can be distinguished from one another.
  • the color of a predetermined area of a cell, the level of light and dark, and the like may be read by a code reader so that they can be distinguished from one another, and may be three or more colors.
  • Each cell has 1 bit for 2 colors, 2 bits for 4 colors, and 3 bits for 8 colors.
  • eight colors with a total of 3 bits of RGB and two of them (C, M, Y), a mixture of three (C, M, Y), a mixture of three (W), or none (B), that is, white, black
  • RGB 3 bits of RGB and two of them
  • W mixture of three
  • B mixture of three
  • identification is easy.
  • it can be formed with four stages of white to gray to black, and two stages of red, green, blue, cyan, magenta, and yellow (by creating two colors that can be distinguished from each other by making the brightness, saturation, hue, etc. different). For example, 6 bits of information can be defined in one cell.
  • the shape of the predetermined area 2-0 is circular in this embodiment, but may be a line segment, a circle, a substantially circle, a rectangle, a polygon, or a shape surrounded by any line segment or curve.
  • the predetermined region 2-0 of the cell may include the same shape and size as the specific cell 1-0. In that case, the specific cell 1-0 is filled with one color.
  • printing can be performed using only one color that can be distinguished from the color of the medium on which the composite code is formed, and by combining the color of the medium and identifying two colors as the cell color, Cost merit is high.
  • FIG. 113 shows the method of data definition by the second code.
  • FIG. 113 (a) shows an embodiment of a cell in which the predetermined area 2-0 (central part) is the dark area 2-01, and FIG. 113 (b) shows that the predetermined area 2-0 (central part) is bright It is an example of the cell which is field 2-00.
  • circular marks 3-0 (3-00 and 3-01) are arranged at eight positions at predetermined intervals in the vertical, horizontal and diagonal directions of 45 degrees from the reference point of the corresponding cell of the first code. Then, numerical information is defined by the color of the mark of their arrangement position.
  • the reference point of the specific cell 1-0 is located at the center of the cell, but the reference point may be located anywhere in the predetermined area as long as the color of the cell can be identified.
  • the reference points arranged in the predetermined area in the frame buffer (two-dimensional image temporary storage area having XY coordinate axes) in which the photographed composite code is recorded, as described in FIGS.
  • the central coordinate value (X C , Y C ) of a predetermined area 2-0 formed by n pixels binarized is set to (X i , Y i ) as the central coordinate value of each pixel.
  • the color of the reference point or the small area (at least a part of the predetermined area) including the reference point is recognized as the color of mutually distinguishable cells.
  • the medium on which the composite code is formed may be curved or the composite code may be photographed obliquely by a camera, and the composite code may be greatly deformed.
  • a reference point calculated by reading the first code A deviation may occur in the coordinate value of the reference point with respect to the coordinate value of the reference point obtained from the imaged predetermined area 2-0.
  • the area of the predetermined area 2-0 is about 1/10 or more of the area of the cell so that the coordinate value of the reference point calculated by reading the first code is included in the predetermined area. It is desirable to have. Note that the coordinate value of the reference point calculated when the composite code formation surface holds a flat surface and the camera shoots from the front (does not tilt) or when the first code is read If it is corrected to be included, the area of the predetermined region may be about 1/20 or more of the area of the cell. As the correction method, in the composite code of FIGS.
  • the embodiment is The predetermined area 2-0 of the cell can be easily extracted by using any of the various algorithms described in 5 and 10 and can be accurately corrected by calculating the reference point of the predetermined area.
  • the composite code of FIGS. 113 (b) and (d) it is not possible to extract a predetermined area which is a white bright area 2-00, so it is calculated by the composite code of FIGS. 113 (a) and (c).
  • the reference point of the predetermined area which is a white bright area 2-00 may be calculated by interpolating based on the reference point of the predetermined area.
  • FIG. 113A and 113C since the black dark area 2-01 which is the predetermined area is surrounded by the white bright area 2-10, the embodiment is The predetermined area 2-0 of the cell can be easily extracted by using any of the various algorithms described in 5 and 10 and can be accurately corrected by calculating the reference point of the predetermined area.
  • the composite code of FIGS. 113 (b) and (d) it is not possible to extract a predetermined area which is
  • a black dark area 2-01 which is a predetermined area is surrounded by a white light area 2-10, and a white bright area 2-00 which is a predetermined area. Is surrounded by the black dark area 2-11, so that the predetermined area 2-0 of the specific cell can be extracted, and correction is accurately performed by calculating the reference point of the predetermined area 2-0 in any specific cell. it can.
  • the arrangement position of mark 3-0 is indicated by a circular solid line and the numbers are attached to (1) to (8) (circled numbers in the figure, the same applies hereinafter). No solid lines or numbers of shapes are drawn.
  • the outer frame of the cell is shown by a solid line in order to make it easy to understand the geometrical relationship between the predetermined area 2-0 and the mark 3-0 and the specific cell 1-0, but this outer frame is also an actual composite code Is not drawn.
  • 113 (c) and (d) is 0 degrees (1) around the right with respect to the direction of the specific cell 1-0 (upward of the composite code) (2) 45 degrees, (3) 90 degrees, (4) 135 degrees, (5) 180 degrees, (6) 225 degrees, (7) 270 degrees, (8) 315 degrees
  • a predetermined distance (radius r indicated by a circular dotted line) is provided from the reference point of the specific cell 1-0.
  • This circular dotted line or x mark is also not drawn in the actual composite code. The same is not drawn in the following embodiments.
  • the judgment as to whether the mark is a bright mark 3-00 (0) or a dark mark 3-01 (1) can be made by recognizing and identifying the color of the position of the ⁇ mark in (c) and (d) of FIG. Is going.
  • the bright part is equivalent to the case where the mark 3-01 is not disposed in the area 2-10 excluding the predetermined area, and the case where no mark 3-01 is disposed can also be defined as information. .
  • 8-bit information can be defined in one cell.
  • the 8-bit information is digitized in the order of (8), (7), (6), (5), (4), (3), (2), (1) from the left. Of course, this order may be set in any way.
  • 113 (c) and 113 (d) are examples in which circular marks are arranged in FIGS. 113 (a) and 113 (b), respectively, regarding the definition of information by the mark 3-0.
  • numerical information of 11010110 is defined.
  • the direction of the code is recognized by reading the first code, and eight are arranged at predetermined intervals from the reference point at predetermined intervals, but the predetermined direction and the predetermined interval are set May be Also, as illustrated in Embodiment 1 and Embodiment 10, they may be disposed at any position in the cell. For example, instead of identifying the color of the position where the mark 3-0 is disposed as in the present embodiment, the orientation of the arrangement pattern and the code that are unique to each other may be defined as numerical information.
  • the color of the mark 3-0 may be set to any color such as the color of the predetermined area 2-0 for identifying the above-described cell, as long as the color is distinguishable from each other. That is, per cell, 1 bit for 2 colors, 2 bits for 4 colors, and 3 bits for 8 colors. In the case of eight colors, white, black, red, green, blue, cyan, magenta and yellow are easy to identify. Furthermore, it can be formed with four stages of white to gray to black, and two stages of red, green, blue, cyan, magenta, and yellow (by creating two colors that can be distinguished from each other by making the brightness, saturation, hue, etc. different). For example, 6-bit information can be defined by one mark 3-0.
  • 9-bit numerical information can be defined in one specific cell 1-0 in combination with eight arrangement positions (3 bits).
  • the plurality of colors that can be defined as the mark 3-0 may be set for each cell. This is because the colors of the marks 3-0 can be defined as numerical information of the cell if they can be distinguished from each other in the cell.
  • the method of recognizing the color of the mark 3-0 includes various boundings described in Example 10 other than recognizing the color of the coordinate position such as the center position included in the mark in the arrangement candidate of the mark 3-0. You may use any of the boxes.
  • the shape of the mark 3-0 is circular, but like the various marks exemplified in the first embodiment and the tenth embodiment, the shape of the mark (line segment, circular, substantially circular, rectangular, Information may be defined with different shapes such as polygons and shapes surrounded by arbitrary line segments and curves, sizes, directions, and the like.
  • the second code can define numerical information for each cell according to the color, shape, size, orientation, and arrangement pattern of the mark 3-0, but the method of defining the numerical information of the second code for each cell is possible. It may be different. This is because every cell is indexed by its position, and the index of the cell can be obtained by reading the first code with the code reader.
  • a method of defining numerical information for each cell having the index may be determined in advance.
  • the second code may be read by acquiring the data format information of the code of. Based on the data format information and the cell index of the first code, a specific cell index of the second code may be created.
  • cells not illustrated other than the specific cells are at least similar to the specific cells.
  • a predetermined area is formed in the cell, and the predetermined area must have a distinguishable color.
  • the cells other than the specific cell may include cells that do not have an area other than the predetermined area. That is, all areas in each cell may have distinguishable colors as in a conventional QR code or the like.
  • FIG. 114 shows a method of correcting the reference point detected at a position deviated from the original position by imaging to a proper reference point.
  • the position of the reference point arranged in the dark cell is determined, for example, using any of various algorithms described in the fifth and tenth embodiments.
  • grid points are formed by connecting reference points in the vertical and horizontal directions with virtual straight lines, and coordinate values of the grid points are used as central coordinate values of bright cells.
  • a virtual grid line may be drawn by interpolation or extrapolation at substantially equal intervals with neighboring grid lines to obtain a grid point.
  • the contents described in the present embodiment can also correspond to the composite code described in the first, fifth, and tenth embodiments and the composite code described thereafter. Furthermore, they may be used in any combination.
  • FIG. 115 shows a cell in the case where the circular predetermined area 2-0 at the center of the composite code shown in the first embodiment is a dark area 2-01 (black), and the area 2-1 excluding the predetermined area is dark 2-11.
  • the cell in the case where the predetermined area 2-0 is the bright area 2-00 (white) is an example in which the area 2-1 excluding the predetermined area is the bright color 2-10.
  • a feature of this embodiment is that, in the case where the first code is an existing code such as a QR code, the range which can be read by the existing code reader is broadened.
  • the QR code reader uses a method in which about half identifies the color of the central position of the cell and the other half uses the method in which the color of the entire cell is identified.
  • it In order to recognize a certain color as a distinguishable color of a specific cell 1-0, it must be a predetermined area 2-0 having an area larger than a predetermined size.
  • the predetermined area 2-0 of the cell is narrow, only the code reader for identifying by the color of the central position of the cell can be used.
  • the area of the predetermined area 2-0 can be increased by setting the entire area excluding the mark 3-0 part as the predetermined area 2-0 having the color of the cell, and the QR code part is generated by the existing QR code reader. Can read. If the reference point (center of the cell) for identifying the color of the cell is provided in the predetermined area, the QR code portion can be read in both of the reading formats described above.
  • the area ratio of the predetermined area 2-0 to the cell can not be determined if the area of the predetermined area 2-0 and the area 2-1 excluding the predetermined area is about 1: 1. However, if the area of the predetermined area 2-0 and the area of the area 2-1 excluding the predetermined area are 2 to 1 or more, both can be identified.
  • the QR code portion can be read by the QR code reader that identifies the color of the entire cell. Furthermore, if the area ratio is 2/3 or more, it can be reliably recognized even if the shooting environment is bad.
  • the identification by the color of the whole cell may be recognized by the lightness (bright and dark), the hue (color) and the saturation (brightness) of the whole cell.
  • the color dominant in the cell may be identified by increasing the density of the cell color in the predetermined area and including how many original colors of the cell are included. For example, when white and gray are used as two colors, using black in a predetermined area of gray cells makes it easy to judge as gray cells in the entire cell.
  • the above reading method may be adopted for a dedicated compound code reader.
  • the method of defining the numerical information by the mark 3-0 arranged in the area 2-1 excluding the predetermined area of the cell is the same as the contents described in the first embodiment.
  • the mark The position can be determined.
  • the medium on which the composite code is formed may be curved or the composite code may be photographed obliquely by a camera, and the composite code may be greatly deformed.
  • the coordinates of the reference point calculated by reading the first code.
  • the value may be a coordinate value outside the predetermined area. Therefore, it is necessary to calculate the coordinate value of the reference point from the predetermined area and correct it to the correct coordinate value of the reference point.
  • the predetermined area 2-00 since the boundary between the predetermined area 2-00 in bright color (white) and the area 2-10 excluding the predetermined area can not be recognized, the predetermined area 2-00 can not be extracted. Therefore, as shown in FIG.
  • the predetermined area can be extracted, and the accuracy is further improved as compared with the first embodiment. It is possible to calculate the reference point well. In this case, since the area of the same color as the predetermined area 2-0 is reduced, it is difficult to read the first code by the QR code reader that identifies the color of the entire cell.
  • FIG. 117 shows a method of correcting the reference point detected at a position deviated from the original position by imaging to a proper reference point.
  • the positions of the reference points arranged in the bright and dark cells are determined, for example, using any of various algorithms described in the fifth and tenth embodiments.
  • reference points are connected by virtual straight lines in the vertical and horizontal directions, and coordinate values of the intersections are set as central coordinate values of bright and dark cells.
  • the mark 3-0 is not arranged in the cell disposed at the predetermined position, and the predetermined area 2-0 of the cell is not the area 2-1 (a color different from the color distinguishable from the cell
  • This embodiment is an embodiment of the reference cell 1-1 which is one of the specific cells surrounded by the region).
  • the predetermined position may be stored in the code reader, or may be stored in the first code as data format information of the second code.
  • the storage method of the position information of the reference cell 1-1 at such a predetermined position may be applied to the fifth, ninth, tenth, and twelfth embodiments described later.
  • the bright predetermined area 2-00 is surrounded by the dark area 2-11 excluding the predetermined area
  • the 1st row, 6th column, 5th row, 1 column In the reference cell 1-11 the dark predetermined area 2-01 is surrounded by the bright area 2-10 excluding the predetermined area.
  • the reference cell 1-1 is disposed, and interpolation is performed based on the reference points calculated from the predetermined area 2-00 of the reference cell 1-10 and the predetermined area 2-01 of the other dark color, The reference point of the bright predetermined area 2-00 is calculated to improve the accuracy of cell identification.
  • the calculated reference points may be connected in a grid shape with virtual lines, and those grid points in the bright color specifying cell may be used as the reference points of the bright predetermined area 2-00.
  • the reference point of the predetermined area 2-00 of the bright color is not formed as a grid point
  • virtual grid lines are drawn by interpolation or extrapolation at substantially equal intervals with nearby grid lines to obtain grid points, and the bright color It may be set as the reference point of the predetermined area 2-00.
  • the reference cells 1-1 are arranged at intervals of about 10 to 25 or more, depending on the number of cells forming the composite code. It is enough.
  • the reference point of the reference cell may be determined using any of the various algorithms described in the fifth and tenth embodiments.
  • the medium on which the composite code is formed is curved or the composite code is photographed obliquely with a camera, and the coordinate value of the reference point is accurately calculated even if the composite code is largely deformed.
  • data defined in the first and second codes can be accurately calculated.
  • the present embodiment may be applied to improve the recognition rate of an existing two-dimensional code such as a QR code, and the coordinate value of the reference point may be determined more accurately and used to identify the cell.
  • reference cells may be arranged at predetermined intervals, or a predetermined range or all cells may be used as reference cells.
  • FIG. 119 shows an example of arrangement in version 6 (41 ⁇ 41 cells) of the QR code as an example of arrangement of reference cells.
  • the quiet zone 0-0 is provided around the outer periphery of the QR code, and finder patterns 0-1 (0-11, 0-12, 0-13, respectively, in the upper left, upper right, lower left corners thereof) And alignment patterns 0-3 for correcting one or more QR codes from near the lower right are disposed at predetermined positions toward the inside.
  • Alignment patterns 0 to 3 closest to the end (quiet zone 0-0) are arranged so as to be 4 cells away from the end.
  • the amount of stored information such as 1 to 40 versions is set, and the format information 0-4 (data format information) 3 which determines what data is arranged for each version is 3 It is provided in the vicinity of each finder pattern 0-1.
  • Timing patterns 0-5 are directed from the upper left finder pattern 0-11 to the upper right finder pattern 0-12 in the horizontal direction, and from the upper left finder pattern 0-11 to the lower left finder pattern 0-13 in the vertical direction Starting with dark cells, light cells and dark cells are alternately arranged.
  • 11 to 25 cells are spaced between alignment pattern 0-3 and alignment pattern 0-3 based on the version, and when corresponding to the arrangement of alignment pattern 0-3, reference cell 1-1 As shown in the black cells in FIG.
  • About 10 to 25 are appropriate between the reference cell 1-1 and the reference cell 1-1 as in (31, 11) or (31, 11) and (31, 31).
  • the interval is reduced by half and the reference cells 1-1 '(21, 11) and (31, 21) of the hatched pattern in the figure, and further, the reference cells 1-1 "(21, 21), etc.
  • the reference cells are shown in black or hatched patterns for the sake of clarity in the figure, they are cells in which the reference marks or reference patterns are actually arranged.
  • Like codes they may be arranged at fixed positions, or positions may be different for each composite code, and such a reference cell 1-1 can be identified by the above-mentioned specific cell index. desirable.
  • the QR code is formed on a print or displayed on a display or the like, but first, the image is photographed using a QR code reader.
  • the QR code reader may be a QR code reader application installed in a smartphone or a dedicated QR code reader (U01). Depending on the shooting method, the shadows may become somewhat unclear, but in order to determine the contrast of each cell, the image recorded in the frame buffer (two-dimensional image temporary storage area having XY coordinate axes) is binarized (U02). Since three finder patterns (position detection patterns) 0-1 occupy the three corners of the QR code and it is convenient to extract the QR code, finder pattern 0-1 is searched next.
  • the number of cells can also be recognized in combination with the formal information 0-4.
  • the timing patterns 0-5 may be used to calculate the number of cells and the coordinate value of each cell.
  • the centers of all the cells can be calculated by projective transformation by obtaining center coordinate values of the three finder patterns 0-1 and alignment patterns 0-3. Furthermore, it may be confirmed by timing patterns 0-5 whether the correction is made correctly. (U05). About half of the QR Code Reader determines the light and dark of the cell based on the light and dark of the central coordinate position, and about half of the remaining R Code Reader determines the light and dark of the cell based on the average brightness (light and dark) of the entire cell.
  • the process of data decoding includes decoding of model number information (U071), application of a mask pattern (U072), decoding of stored information (U073), removal of a filler code (U074) and the like.
  • the mask pattern is a code pattern used in the process of optimizing the cell balance of light and dark (black and white) to ensure the reading of the QR code, and the buried code is the number of code words. Is a temporary code that does not indicate data used for the purpose of filling empty code word positions if the symbol capacity is less than the capacity of the symbol. Also, these data decoding processes may be used in the second code.
  • the method of reading the QR code is not limited to the above-described method, and the QR code generated by the industry standard may be read in any manner to decode the data. Naturally, the same applies to the case where a QR code is used as the first code of the composite code.
  • FIG. 121 shows a process of calculating coordinate values of each cell of the QR code in the reading procedure of the QR code.
  • FIG. 121 (a) shows an image of a QR code which is formed on a print or displayed on a display or the like.
  • FIG. 121 (b) shows an image of the QR code captured by the reading device. Thus, depending on the way of photographing, the shadow may become somewhat unclear.
  • FIG. 121 (c) is an image of a QR code obtained by binarizing the captured image.
  • FIG. 121 (d) is a diagram schematically showing the calculated center coordinate positions of the finder pattern 0-1 and the alignment pattern 0-3 by white circles. The actual coordinate position is a point and does not have the size of these open circles.
  • FIG. 121 (e) is a diagram showing the calculated central coordinate position of each cell as a black circle in the bright cell and a white circle in the dark cell for the sake of clarity.
  • the actual coordinate position is a point and does not have the size of these black circles or white circles.
  • black circles and white circles such as these are not drawn in the actual composite code.
  • FIG. 122 is an enlarged view of a part of the composite code of FIG. 119, and shows a method of correcting the reference point using this.
  • the reference points of the reference cells are obtained, the reference points are connected by imaginary lines in a grid (broken line).
  • internal division points are determined so as to pass through the centers of cells in horizontal rows and vertical columns, and internal division points in the same row or column are connected by imaginary horizontal or vertical lines, respectively.
  • each grid point of the formed grid line is obtained as the reference point of each cell.
  • the reference point A is a reference point A ′ obtained by internally dividing the distance by 2/10 and the distance by 1/10. It is obtained as a grid point of a virtual internal dividing line passing through A ′ ′ obtained by division.
  • the correction by the second code is performed while leaving the functional pattern of the first code, etc. It is also possible to remove the alignment patterns 0-3 and the like and correct the second code as an independent code using a reference cell or the like. In that case, while the alignment pattern 0-3 used for correction etc. requires a total of 25 cells of 5 ⁇ 5, the reference cell can play a role equal to or better than only one cell, ie, 1/25. Minutes, data area can be increased. Further, part of the alignment patterns 0-3 may be left and used in combination with a reference cell or the like. In this case, the conventional QR code reader can not read it, and a new code reader is required.
  • the reference points of the reference cells are connected by imaginary lines.
  • internal or external division points are obtained by interpolation or extrapolation of broken lines, and those points are connected to form an imaginary grid line passing through all the cells,
  • the grid points allow correction of the reference points of all cells.
  • the horizontal and vertical grid lines are obtained by internally dividing in the horizontal direction by the distance of D W and dividing in the vertical direction by the distance of D H.
  • the normal information is not added to the reference cell, it may be added.
  • the other specific cells may also be dummy cells to which information is not added. If the data amount of the second code is less than the stored information, it goes without saying that many cells of the first code not originally used as specific cells may be provided as reference cells and used for correction of the reference points. Yes.
  • FIG. 125 shows an embodiment in which the shape of the predetermined region 2-0 of the reference cell 1-1 according to the fourth embodiment is an isosceles triangle whose direction can be defined. Even if the imaged composite code is largely deformed and the correct direction can not be recognized, the direction in the reference cell 1-1 can be accurately recognized by the predetermined area 2-0 of the isosceles triangle.
  • the shape of the predetermined area 2-0 of the reference cell 1-1 may be any shape or size as long as the direction can be recognized. Since the deviation of the direction of the specific cell 1-0 is smaller than the deviation of the coordinate value of the reference point, the distance between the reference cell 1-1 is 10 to 25 or more, although it depends on the number of cells forming the composite code.
  • the reference point of the predetermined area 2-0 of the reference cell 1-1 may be a centroid of an isosceles triangle. In that case, it is desirable to align the center of the center of the center of the center of the predetermined area and the cell. Even when the reference point is defined outside the centroid, it is desirable to make the reference point and the center of the cell coincide.
  • the coordinate value of the reference point of each cell is accurately calculated.
  • the mark 3-0 may be disposed in the reference cell 1-1 so as not to contact the predetermined area 2-0 to define numerical information. The same applies to the case of using predetermined regions of other shapes and sizes. Of course, the reference point may be placed at another position.
  • the reference point may be determined using any of the various algorithms described in the fifth and tenth embodiments.
  • the drawing of the grid line is shown in FIG. 126, but as an example where the reference point of the predetermined area of the triangle and the center point of the cell coincide, first, as shown by the broken line, the reference point of the reference cell is Connect. Next, although not shown, as in FIG. 124, in rows and columns in which grid points do not exist, grid lines may be formed by interpolation or extrapolation to obtain grid points.
  • FIG. 127 shows an implementation of a reference cell 1-2, which is a type of a specific cell, in which a reference pattern clearly indicating a geometrical relationship with a predetermined area 2-0 and a mark 3-0 in a specific cell 1-0. It is an example. All marks (reference marks 3-1) are arranged in the area 2-1 except the predetermined area of the cell arranged at the predetermined position, and the predetermined area 2-0 of the cell is the area 2-1 excluding the predetermined area It is formed so as to be surrounded by (a region different from a color that can be identified as a cell).
  • the predetermined position may be stored in the code reader, or may be stored in the first code as data format information of the second code.
  • Such a method of storing the position information of the reference cell 1-2 may be applied to the seventh, eleventh, and thirteenth embodiments described later.
  • a cell at a predetermined position of 1 row 1 column, 1 row 6 columns, 5 rows 1 column, 5 rows 6 columns (four locations at corners) A reference pattern is formed on the If the central coordinate value of each mark 3-0 forming the reference pattern is calculated, the reference pattern is obtained even if the arrangement position of the mark 3-0 deviates from the original position due to large deformation of the imaged composite code. You can get accurate numerical information by referring to. Similar processing may be possible with other embodiments of the composite code having a reference cell that includes a reference pattern.
  • the arrangement position of the mark 3-1 in this embodiment is the same as the arrangement candidate positions in (1) to (8) in FIGS. 113 (a) and 113 (b), but divided into a plurality of cells.
  • the mark 3-1 may be arranged.
  • (1), (3), (5), (7) and (2), (4), (6), (8) can be formed in different neighboring cells, synthesized and used.
  • the bright color reference mark 3-10 is arranged by surrounding the bright color predetermined area 2-00 with the dark area 2-11 excluding the predetermined area
  • the dark reference mark 3-11 is disposed so that the dark predetermined area 2-01 is surrounded by the bright area 2-10 excluding the predetermined area.
  • the geometrical relationship between the reference point calculated from the predetermined area 2-0 disposed at the center of the reference pattern and each mark 3-1 can be accurately recognized, and the reference point can be calculated accurately.
  • accurate calculation of the reference point is also possible.
  • the deviation of the arrangement of each mark 3-0 with respect to the reference point is smaller than the deviation of the coordinate value of the reference point, so the reference pattern depends on the number of cells forming the composite code. It is sufficient to arrange at the above intervals.
  • the reference point may be determined using any of the various algorithms described in the fifth and tenth embodiments. Although how to draw grid lines is shown in FIG. 128, reference points of reference cells are connected by a line as shown by a broken line. Next, although not shown, as in FIG. 124, in rows and columns in which grid points do not exist, grid lines may be formed by interpolation or extrapolation to obtain grid points. The reference pattern may also be interpolated to more accurately determine the geometrical relationship between the reference point of each specific cell and each mark 3-0.
  • the shape, size, orientation, color, number, arrangement position, etc. of the predetermined area or mark may be used. And when there exist two or more, a shape, a magnitude
  • FIG. 129 shows an embodiment in which a reference pattern is formed in which the mark (5) is removed from the marks (1) to (8) shown in FIGS. 113 (a) and 113 (b) in the sixth embodiment.
  • the arrangement pattern of the marks 3-1 is unique (non-rotational symmetry), and the direction can be recognized.
  • the reference pattern has two-dimensionality. You can get the effect.
  • the reference point may be determined using any of the various algorithms described in the fifth and tenth embodiments. Although how to draw grid lines is shown in FIG. 130, first, reference points of reference cells are connected by a line as shown by a broken line. Next, although not shown, as in FIG. 124, in rows and columns in which grid points do not exist, grid lines may be formed by interpolation or extrapolation to obtain grid points.
  • FIG. 131 shows an example of a composite code in which the predetermined area 2-0 and the area 2-1 excluding the predetermined area are formed in the area obtained by dividing the inside of the cell into a plurality of parts as the second code and the mark 3-0 is arranged in the latter. It is.
  • bright predetermined regions are indicated by dotted lines, but are not drawn in actual composite code.
  • the cells forming the composite code are arranged in an array, but in FIG. 132, one specific cell 1-0 (1-00 and 1-01) is used to make the configuration of the composite code easy to understand.
  • the outer frame is shown by a solid line, a solid line is not drawn on the actual composite code.
  • the configuration of a specific cell is not limited to 6 ⁇ 6 pixels, and may be of any size or number of pixels, as long as it can be formed and read, and the shape and size of each section Or a combination of specific cells of different configurations.
  • the predetermined area 2-0 located in the same shape in the central section is formed with dark color 2-01 (black) in FIG. 133 (c) and bright color 2-00 (white) in FIG. 133 (d).
  • the regions 2-1 except for the predetermined region are shown as bright colors 2-10.
  • a rectangular dotted line is shown to clearly indicate the boundary between the predetermined area 2-00 (white) of the cell and the area 2-10 (white) excluding the predetermined area. This dotted line is not drawn.
  • reference points shown by + marks in FIGS. 133 (c) to 133 (f) are within the predetermined areas.
  • the first code is read, and the coordinate values of the reference points of all the specific cells 1-0 are calculated.
  • the color of the cell is identified by recognizing the color of the reference point or a small area (at least a part of a predetermined area) including the reference point.
  • the data of the first code is defined by two colors of a black dark predetermined area 2-01 and a white bright predetermined area 2-00 surrounded by a dotted line. It does not have to be white and black as long as the 0 colors can be distinguished from one another.
  • predetermined areas of the cells can be read by the code reader at color, light and dark levels, etc., they can be distinguished from one another, and may be three or more colors.
  • Each cell has 1 bit for 2 colors, 2 bits for 4 colors, and 3 bits for 8 colors.
  • white, black, red, green, blue, cyan, magenta and yellow are easy to identify.
  • it can be formed with four stages of white to gray to black, and two stages of red, green, blue, cyan, magenta, and yellow (by creating two colors that can be distinguished from each other by making the brightness, saturation, hue, etc. different).
  • 6 bits of information can be defined in one cell.
  • the predetermined area of the cell may have the same shape, size and orientation as the cell. In that case, the cell 1-0 is filled with one color. Note that the generation of a composite code in two colors can be printed with only one color that can be distinguished from the color of the medium on which the composite code is formed. If two colors are identified as the cell color in combination with the color of the medium, Cost merit is high.
  • FIGS. 133 (c) to 133 (f) show a method of data definition by the second code.
  • FIG. 133 (c) shows an embodiment of the specific cell 1-0 in which the predetermined area 2-0 (central part) is dark 2-01
  • FIG. 133 (d) shows the predetermined area 2-0 (central part) Is an embodiment of a cell having a bright color 2-00.
  • mark 3-0 (3-00 and 3-01) of the same shape and size as the section where the mark is arranged in the vertical, horizontal, 45-degree direction
  • the information is defined by the color of the mark of the arrangement position that is arranged in eight places.
  • the coordinate value of the reference point of the specific cell 1-0 is calculated by the first code in principle, but the coordinate value of the reference point for decoding the second code may be calculated by the second code. Furthermore, the coordinate value of the reference point for decoding the first code may be calculated by the second code.
  • the use of the coordinate values of the reference point described above may be applied in other embodiments.
  • the reference point of the specific cell 1-0 is located at the center of the cell, but the reference point may be located anywhere in the predetermined area 2-0 as long as the cell color can be identified. Good.
  • the color of the reference point or the small area (at least a part of the predetermined area 2-0) including the reference point is recognized as the color of mutually distinguishable cells.
  • the medium on which the composite code is formed may be curved or the composite code may be photographed obliquely by a camera, and the composite code may be greatly deformed.
  • a reference point calculated by reading the first code A deviation may occur in the coordinate value of the reference point with respect to the coordinate value of the reference point obtained from the imaged predetermined area 2-0.
  • the area of the predetermined area 2-0 is about 1/10 or more of the area of the cell so that the coordinate value of the reference point calculated by reading the first code is included in the predetermined area. It is desirable to have.
  • the coordinate value of the reference point calculated by shifting the position of the reference point calculated by reading the first code when the camera is shooting directly from the front does not tilt
  • the area of the predetermined area may be about 1/20 or more of the area of the cell.
  • the arrangement candidate position of the mark 3-0 is indicated by a rectangular solid line indicating a section, and the numbers are attached from (1) to (8), The actual composite code does not draw this solid line or number.
  • the outer frame of the cell is shown by a solid line in order to make it easy to understand the geometrical relationship with the specific cell 1-0, this outer frame is also not drawn in the actual composite code.
  • the reference point (center) of the specific cell 1-0 is spaced apart from the reference point (center) by a predetermined distance (length D of one side of the section in the vertical and horizontal directions, and ⁇ 2D in the diagonal direction).
  • the mark is placed at the position defined by the direction and the distance, but it can be said that the direction and the distance are fixed at a fixed position.
  • the judgment as to whether the light color is 3-00 (0) or the dark color 3-01 (1) is made by recognizing the color at the position of the mark x in FIGS. 133 (e) and (f). The color of the center of the section corresponding to the arrangement position of the mark 3-0 may be recognized and identified. In the case of FIGS.
  • Unallocated cells can also be defined as information. Since there are eight placement candidate positions of the mark 3-0 in one cell, 8-bit information can be defined in one cell. The 8-bit information is digitized in the order of (8), (7), (6), (5), (4), (3), (2), (1) from the left. Of course, this order may be set in any way.
  • a mark of the same shape and size as the section is arranged in the section area
  • numerical information of 10100011 is defined
  • FIG. 133 (f) numerical information of 11010110 is defined.
  • the division method is arbitrary, and the shape of the division may be divided by a triangle, a polygon, or a curve other than a rectangle. Also, it may be of any size and orientation.
  • a mark having the same shape as the section is arranged to fill the section, but may be arranged anywhere in the sectioned area, and if it can be formed and read, the mark has any shape or size.
  • the orientation, color, and number may be used, and furthermore, marks of different shapes, sizes, orientations, colors, and numbers may be arranged anywhere in the same cell and in the same section.
  • FIG. 134 shows how to draw grid lines.
  • reference points of predetermined regions of respective specific cells are connected by imaginary lines.
  • virtual grid lines may be interpolated or extrapolated to obtain grid points.
  • the mark 3-0 is not arranged in the cell arranged at the predetermined position, and the predetermined area 2-0 of the cell is different from the area 2-1 (a color different from the color distinguishable from the cell Of the reference cell 1-1 surrounded by the
  • the predetermined position may be stored in the code reader, or may be stored in the first code as data format information of the second code.
  • the reference cell 1-11 is arranged at the predetermined position of 1 row 2 columns, 3 rows 6 columns, 5 rows 2 columns .
  • the predetermined area 2-01 of the cell is surrounded by the area 2-10 excluding the predetermined area, the predetermined area 2-01 is easily extracted to obtain an accurate coordinate value of the reference point, and the operation is performed. Similar to Example 4, correction of coordinate values of other reference points can be performed.
  • the dark specified cell 1-01 in which the dark predetermined area 2-01 is arranged and the mark 3-0 is not arranged is set as the reference cell 1-11.
  • the dark specified cell 1-01 is not always regularly arranged. Since they are not arranged, the reference cells 1-11 may be arranged in a biased manner, and there is a possibility that the entire composite code can not be corrected with a uniform reference point.
  • the tenth embodiment compensates for the defect.
  • the reference point may be determined using any of the various algorithms described in the fifth and tenth embodiments. Although how to draw grid lines is shown in FIG. 136, first, as shown by broken lines, reference points of reference cells are connected by imaginary lines. Next, although not shown, in a row and a column having no intersection as in FIG. 124, virtual grid lines may be formed by interpolation or extrapolation to obtain grid points.
  • FIG. 137 shows an embodiment in which two color reference cells 1-1 are arranged according to a predetermined rule as shown in FIG.
  • the bright predetermined area 2-00 is surrounded by the dark area 2-11 excluding the predetermined area
  • the 1st row, 6th column, 5th row, 1 column In the reference cell 1-11 the dark predetermined area 2-01 is surrounded by the bright area 2-10 excluding the predetermined area. Therefore, as in the ninth embodiment and the like, the predetermined area 2-01 can be easily extracted, and accurate coordinate values of the reference points can be obtained.
  • the number of reference cells 1-1 is 10 to 25 depending on the number of cells forming the composite code. It is sufficient to arrange at an interval of more than one. It is desirable that at least a plurality of reference cells 1-1 be arranged with respect to the rows and columns in which at least the specific cells 1-0 are arranged. Because, if the grid line is drawn so as to include the reference points calculated from the reference cells 1-1 in the same row and column directions, all the reference points in the composite code can be accurately calculated from the grid points. . If the reference cell 1-1 is arranged on a rectangle, it is easy to calculate grid points with uniform accuracy.
  • a large (large capacity) composite code formed by a large number of specific cells 1-0 if the reference cells 1-1 are arranged in a lattice, the curvature of the medium in which the composite code is formed and the It is possible to follow the deformation in the case where the composite code is photographed obliquely with a camera, and it is possible to accurately calculate the coordinate value of the reference point and accurately calculate the data defined in the first and second codes.
  • a correction method of the reference point can be used in all other embodiments, and further, it is possible to calculate position information of a cell of a conventional two-dimensional code such as a QR code which does not have the second code. It can be used.
  • the reference point may be determined using any of the various algorithms described in the fifth and tenth embodiments. Although how to draw grid lines is shown in FIG. 138, first, as shown by broken lines, reference points of reference cells are connected by imaginary lines. Next, although not shown, in a row and a column having no intersection as in FIG. 124, virtual grid lines may be formed by interpolation or extrapolation to obtain grid points.
  • FIG. 139 shows an example of the reference pattern in which the geometrical relationship between the predetermined area 2-0 and the mark 3-0 in the specific cell 1-0 is specified.
  • the reference cells 1-2 arranged at predetermined positions of the composite code, i) dark reference marks in the left, right, upper and lower sections of the bright predetermined areas 1-20 of the reference cells of 1 row 1 column and 5 rows 6 columns
  • a bright reference mark 3-10 is disposed in a section at an angle of 3-14 degrees and 45 degrees, and a reference pattern is formed in a reference cell 1-20.
  • the predetermined area 2-0 (the same size as the reference mark 3-1) can be accurately recognized, the bright reference mark 3-10 and the dark reference mark 3--1 arranged around the predetermined area 2-0 From the boundary with 11, the central coordinate values of those marks 3-0 can be calculated accurately.
  • the deviation of the arrangement of each mark 3-0 with respect to the reference point is smaller than the deviation of the coordinate value of the reference point, so the reference pattern depends on the number of cells forming the composite code. It is sufficient to arrange at the above intervals.
  • the reference point may be determined using any of the various algorithms described in the fifth and tenth embodiments.
  • FIG. 140 how to draw grid lines is shown in FIG. 140, first, as shown by broken lines, reference points of reference cells are connected by imaginary lines. Next, although not shown, virtual grid lines may be formed and interpolated by extrapolation or extrapolation in rows and columns in which grid points do not exist as in FIG. Furthermore, since the central coordinate value of each of the marks that define the reference pattern can be accurately obtained, grid lines can be drawn for these too and used for correction. That is, accurate correction can be performed using marks other than the predetermined area. Also in the examples of FIGS. 128 and 130, if there is a sufficiently high resolution, grid lines can be similarly drawn.
  • FIG. 141 shows an embodiment in which a predetermined area 2-01 having a unique shape whose orientation can be recognized is arranged in the section of FIG. 133 (a) in the reference cell 1-1 of the tenth embodiment. Even if the captured composite code is largely deformed and the correct orientation can not be recognized, the orientation in the reference cell 1-1 can be accurately recognized by the predetermined area 2-01 having a unique shape.
  • the shape and size of the predetermined area 2-01 of the reference cell 1-1 may be any shape and size as long as the direction can be recognized.
  • the distance between the reference cell 1-1 is 10 to 25 or more, although it depends on the number of cells forming the composite code. It is sufficient if placed in Further, it is desirable that the reference point of the predetermined area 2-01 be at the center of the reference cell 1-1, but the calculation formula of the first embodiment can be corrected and used for calculation of the central coordinate value.
  • the correction is that the shape of the predetermined area 2-01 is asymmetrical in the vertical direction from the center of the reference cell 1-1, and the upper portion is formed by 2 pixels and the lower portion is formed by 4 pixels, 2 / (2 + 4) It is shifted downward by 1/2 of 1/3, and 1/6 pixels may be added.
  • the reference points arranged in the predetermined area are the frame buffer (two-dimensional image temporary storage area having the XY coordinate axes) in which the photographed composite code is recorded.
  • the reference point can be obtained by the above-described correction.
  • FIG. 143 shows an embodiment of a reference pattern in which a direction is added to the reference cell 1-2 of the eleventh embodiment to clarify the geometrical relationship between the predetermined area 2-0 and the mark 3-0 in the specific cell 1-0. It is.
  • the predetermined area 2-0 is rectangular, and the boundary with the periphery can be recognized in bright and dark, so that the coordinate value of the reference point is accurately calculated. can do. That is, the boundaries may be recognized on the upper, lower, left, and right lines, or dots may be detected.
  • Example 11 The difference from Example 11 is that i) the dark reference mark 3-11 is disposed in the lower left 45 ° diagonal direction section of the bright predetermined area 1-20 of the reference cell of 1 row 1 column and 5 rows 6 columns , A point forming a unique reference pattern indicating a direction, ii) a light reference mark 3 in the lower right 45 degree diagonal section of the predetermined area 1-21 of the reference cell of 1 row 6 columns and 5 rows 1 column -10 is placed to form a unique reference pattern indicating the direction.
  • the arrangement pattern of the marks 3-1 is unique (non-rotational symmetry), the direction can be recognized, and the same effect as that of the seventh embodiment can be obtained.
  • the reference point may be determined using any of the various algorithms described in the fifth and tenth embodiments. Although how to draw a grid line is shown in FIG. 144, first, as shown by a broken line, the reference points of the reference cells are connected by an imaginary line. Next, although not shown, in a row and a column in which grid points do not exist as in FIG. 124, virtual grid lines may be formed by interpolation or extrapolation to obtain grid points. Further, since the central coordinate value of each of the marks defining the reference pattern is also obtained, grid lines can be drawn for these as well as in FIG. 144 and used for correction.
  • Example 14 Since the code reader such as the current smartphone has high resolution, even if the size of the mark 3-0 in Examples 8 to 13 is half (2 x 2 to 1 x 2 in section), it can be sufficiently detected.
  • the size of the predetermined area 2-0 is divided by 2 ⁇ 2 as in the eighth to thirteenth embodiments, while the mark 3-0 is implemented.
  • half of the 1 ⁇ 2 partitions are used to increase the number of partitions as compared to the eighth to thirteenth embodiments.
  • 6 ⁇ 6 pixels are used as a reference, but one cell is divided according to the predetermined area and the size of each mark FIG.
  • the configuration of the specific cell is not limited to 6 ⁇ 6 pixels, and may be of any size, and the number of sections different in length and width may be sufficient as long as formation and reading are possible Also, the shape, size and orientation of each section may be any. Also, in order to calculate the reference point with high accuracy, it is desirable that the predetermined area occupies the center section of the cell and the reference point be at the center of the cell, but it may be anywhere as long as it can be formed and read.
  • a section of 2 ⁇ 2 in height and width is taken as a predetermined area, and a section of 1 ⁇ 2 in height and width is taken as a mark, but any shape, size, direction, and position may be used as long as formation and reading are possible. Also, they may be different within the same code.
  • the characteristics of the predetermined area in this embodiment are the same as the characteristics of the predetermined area in the eighth to thirteenth embodiments.
  • FIGS. 145 (c) to 145 (f) show a method of data definition by the second code.
  • the predetermined area 2-0 located in the same shape in the central section is formed with dark color 2-01 (black) in FIG. 145 (c) and bright color 2-00 (white) in FIG. 145 (d).
  • the area 2-1 excluding the predetermined area is shown as a bright color 2-10.
  • a rectangular dotted line is shown to clearly indicate the boundary between the predetermined area 2-00 (white) of the cell and the area 2-10 (white) excluding the predetermined area. This dotted line is not drawn.
  • the first section from the upper right is lighted with the same shape and size as the section in which the mark is arranged.
  • the second color is dark
  • the first is a light separation mark
  • the second is a dark header indicating the start of data.
  • the first section from the lower left is arranged as a light separation mark
  • the second is a dark header.
  • the reference point of the specific cell 1-0 is located at the center of the cell, but the reference point may be located anywhere in the predetermined area 2-0 as long as the cell color can be identified. Good.
  • the arrangement candidate position of the mark 3-0 is indicated by a rectangular solid line indicating a section, and the numbers are attached from (1) to (12).
  • the actual composite code does not draw this solid line or number.
  • the outer frame of the cell is shown by a solid line in order to make it easy to understand the geometrical relationship with the specific cell 1-0, this outer frame is also not drawn in the actual composite code.
  • the color of the mark shown in FIGS. 145 (e) and (f) is recognized to identify whether it is light color 3-00 (0) or dark color 3-01 (1).
  • a cell in which no mark 3-01 is disposed can also be defined as information. Since there are 12 placement candidate positions of the mark 3-0 in one cell, 12 bits of information can be defined in one cell.
  • the 12-bit information is digitized in the order of (12) th to (1) th according to the mark number.
  • FIGS. 145 (e) and 145 (f) are examples in which information is defined by arranging marks having the same shape and size as the sections in the sections in FIGS. 145 (c) and 145 (d), respectively.
  • numerical information of 101101010101 is defined in 001010111010 and in FIG. 145 (f).
  • FIGS. 145 (e) and 145 (f) further show specific examples of the data scan method.
  • scanning is performed along a diagonal from upper right to lower left.
  • the predetermined area is traversed along the diagonal line.
  • extraction of the predetermined area and accurate calculation of the reference coordinate value can be performed.
  • both the left and right light separation marks and the dark header are diagonally crossed, their positions and dimensions can be determined.
  • the right column is then from top to bottom, the left column is from bottom to top, and for the middle column, from top to bottom, in order to correspond to the mark number based on that.
  • the data defined by the mark is read by pointing and scanning from the bottom to the predetermined area.
  • headers and separation marks may be anywhere, as long as they can be formed and read.
  • data marks may be increased without placing a header or the like.
  • the marks may be arranged in any way, and the order of reading may be different in each cell, if predetermined.
  • the division method is arbitrary, and the shape of the division may be divided by a triangle, a polygon, or a curve other than a rectangle.
  • the mark of the same shape is arranged to fill the section in the section, it may be arranged anywhere in the divided area, and if it can be formed and read, the mark has any shape or size
  • the size, direction, color, number may be used, and furthermore, marks of different shapes, sizes, directions, colors, and numbers may be arranged in the same cell.
  • FIG. 146 shows an example of arrangement of predetermined areas and marks and definition of information in the case of dividing by 8 ⁇ 8 with respect to FIGS. 133 and 145 in which the inside of the cell is divided by 6 ⁇ 6 in the second code. ing.
  • duplicate explanations are omitted below, but they can be applied also in this embodiment and may be used in combination.
  • these are merely examples, and the cells of the composite code in the present embodiment are not limited to these.
  • FIG. 146 (a), (d), (g), (j) and (m) show an embodiment in which the arrangement position of the mark 3-0 is shown by eight dotted lines in one cell. Yes, 8 bits of information can be defined in one cell. The 8-bit information is digitized in the order of (8), (7), (6), (5), (4), (3), (2) and (1) from the left in order of 1 bit.
  • FIG. 146 (p) shows an embodiment in which the arrangement position of the mark 3-0 is provided at 12 places indicated by a dotted line in a predetermined area 2-0 indicated by a solid thick line in one specific cell. 12 bits of information can be defined in the specific cell 1-0 of.
  • the 12-bit information is (12), (11), (10), (9), (8), (7), (6), (5), (4), (3), (2) from the left , And (1) are quantified in order of 1 bit. All the above marks are formed of 2 ⁇ 2 pixels in display on the smartphone and printing at 300 dpi. In the case of printing at 600 dpi, the image is formed by 4 ⁇ 4 pixels. A solid thin line indicating a section in a cell, a solid solid thick line indicating a predetermined area 2-0, and a dotted line indicating a mark 3-0 are not drawn on the composite code.
  • 146 (a) to 146 (c) show an embodiment in which an air gap is provided so that the marks 3-0 do not contact each other, and the predetermined area 2-0 is formed of 4 ⁇ 4 pixels.
  • the color of the air gap may be any color as long as it can be distinguished from the mark 3-01.
  • the mark 3-01 may be recognized by acquiring the change point of the color of. Note that other mark recognition methods described above may be used, or may be combined to improve the recognition accuracy.
  • the predetermined area 2-0 is surrounded by the bright area 2-10 excluding the predetermined area, and the mark 3-01 is disposed in the area 2-10. There is. Thereby, in FIG. 146 (b), numerical information of 01101010 is defined in 10011101 and in FIG. 146 (c). In the present embodiment, since the predetermined area 2-0 is arranged larger, the color of the cell can be identified because it is included in the predetermined area 2-0 even if the reference point is slightly deviated.
  • 146 (d) to 146 (f) are provided with an air gap so that the predetermined area 2-0 does not contact the mark 3-01 with respect to FIGS. 146 (a) to 146 (c).
  • An embodiment in which the area 2-0 is formed by 2 ⁇ 2 pixels is shown. In this embodiment, the geometrical arrangement relationship between the predetermined area 2-0 and the mark 3-01 becomes clearer, and the recognition rate of the mark 3-01 can be improved. However, if the reference point is shifted because the predetermined area 2-01 is small, the color of the specific cell 1-0 may be misidentified.
  • the coordinate value of the reference point which is shifted and calculated by reading the first code may not be included in the predetermined area 2-0, and a color different from the color of the predetermined area 2-0 may be recognized. is there.
  • correction may be performed as in the embodiments 9 to 13 including the reference cell 1-1 and the reference cell 1-2, or the predetermined area 2-01 is recognized from the color near the reference point,
  • the reference point may be corrected based on the predetermined area 2-01, and the mark 3-01 may be recognized from the geometrical arrangement relationship between the predetermined area 2-01 and the mark 3-01.
  • the predetermined area 2-01 may be recognized by acquiring the change point of the color of the predetermined area 2-01 on a straight line so as to straddle the aforementioned gap.
  • FIGS. 146 (g) to 146 (i) show examples of the predetermined area 2-0 formed including the void portion provided in FIGS. 146 (a) to 146 (c).
  • the numerical information is slightly reduced, by arranging at least two marks 3-0 of the same color as the predetermined area 2-0, the sum of the marks 3-0 of the same color as the predetermined area 2-0 becomes the specific cell 1-0.
  • the specified cell 1-0 is provided with an air gap so that the mark 3-01 does not contact other adjacent cells, and the predetermined area 2-0 is 2 ⁇ 2 It is an embodiment formed of pixels. This makes it possible to clearly distinguish the mark 3-01 from other cells and to prevent false recognition. Since the predetermined area 2-0 is small by 2 ⁇ 2 pixels, there is a possibility that the reference point is not included in the predetermined area 2-0. Therefore, in the case of FIGS. 146 (d) to 146 (f) It is desirable to correct the same reference point as in.
  • the 146 (m) to 146 (o) separate the void portion provided in FIGS. 146 (j) to 146 (l) as a region of the same color as the predetermined region 2-0 to form the predetermined region 2-0
  • the area ratio is 62.5%, respectively, by arranging at least two or three marks 3-0 of the same color as the predetermined area 2-0.
  • the QR code portion can be read by the QR code reader that identifies the color of the entire cell.
  • the mark 3-0 of the same color as the predetermined area 2-0 is 1, the numerical value information of 0010101 is defined in FIG. 146 (o) as in FIG.
  • the predetermined area 2-0 in FIG. 146 (p) to FIG. 146 (r) is changed from 4 ⁇ 4 pixels to 2 ⁇ 2 pixels, and FIG.
  • An air gap may be provided between the predetermined area 2-0 and the mark 3-0 as in 146 (f).
  • the area excluding the predetermined area 2-01 is a light area 2-10 in FIG. 146 (t)
  • the area excluding the predetermined area 2-00 is a dark area 2-11 in FIG. 146 (u).
  • the predetermined area 2-0 and the reference point can be accurately recognized, the geometrical arrangement relationship with the mark 3-0 becomes clearer, and the recognition rate of the mark 3-0 is improved. be able to.
  • Such distinguishable gaps surrounding the predetermined area 2-0 may be applied to FIGS. 146 (d) to 146 (f).
  • the QR code version is determined according to the amount of information to be stored, and a cell array is generated based on the version.
  • the error correction level is also determined.
  • the error correction level may be changed as needed (U11).
  • the data area in the first code (the finder pattern, the finder pattern separation pattern, the timing pattern, the alignment pattern, etc., the functional pattern and format information essential for the correction of the QR code, etc.
  • the cells of the region are divided by a predetermined number (U12). A predetermined area is set in those cells to define data of the first code (U13). Then, the specific cell is set based on the data stored in the second code.
  • a cell not used as a specific cell of the second code may not be divided, and the shape of the predetermined area may be the same as that of the cell. That is, the cell of the conventional QR code may be left as it is.
  • the data format information of the second code and the specific cell index may be included in the reader, may be stored in the first code, or may be stored in the second code.
  • the specific cell index of the second code may be created based on the data format information of the second code and the cell index of the first code. Alternatively, it may be recognized by the shape of the predetermined area and the presence or absence of a mark.
  • the specific code may be arranged in the cell forming the above functional pattern of the original QR code to store the second code (U14).
  • a mark is arranged in a section set based on numerical information defined in each cell forming data (U15). If the reading order information is stored separately, the reading order may be changed. As needed, reference cells for defining reference points and reference patterns are arranged. Information may be defined in the reference cell (U16).
  • the second code includes specific information corresponding to at least a part of the first code, as in the embodiments 4 and 5, the second code Is described as a digital code of data represented by a bar code which is the first code, or a character string such as alphanumeric characters, kanji characters, katakana characters and hiragana characters.
  • the specific information includes a digital signature, that is, encryption information.
  • the specific information including the encryption information is the first code including the QR code and , And may be stored in a second code including a dot code.
  • Encrypted information obtained by encrypting the encoded information of the data of QR code by the encryption means in the dot code.
  • the specific information may include not only the encrypted information but also the encoded information, and similarly, the following case is also included for all of the electronic authentication described in FIGS. 55 and 56 of the sixth embodiment.
  • the specific information including the encoding information may be stored in the first code including the QR code and the second code including the dot code.
  • the first code and / or the first code may be information other than data for forming information (including an error correction code) used by the user, such as data format information of the second code, as specific information. It may be stored in the code of 2. Further, the specific information is preferably stored in a specific area set in a partial area of the first and second codes. When the QR code is used as the first code, the filling area may be used to store the specific information. The above specific information and / or specific area may be used in combination with other embodiments.
  • error correction coding and data storage in a specific cell An example of error correction coding and data storage here is shown below.
  • the number of data storage specific cell numbers of the original QR code such as finder pattern 0-1, finder pattern separation pattern 0-2, timing pattern 0-5, alignment pattern 0-3, format information 0-4, etc. It derives by subtraction.
  • the QR code version 2 since 375 can be used as 8 bits each, the amount of information that can be stored is 375 bytes.
  • the data are arranged in the order of RS1 [0], RS2 [0], RS1 [1], RS2 [1],. (5)
  • the error correction code is stored from the upper left to the right, down the level from the left to the right. That is, as a whole, storage is performed from the upper left to the lower right.
  • the composite code may be printed on a printed matter or displayed on a display such as a smartphone.
  • the reading procedure of the composite code will be described with reference to the flowcharts of FIGS.
  • the composite code may be printed or may be displayed on a display such as a smartphone.
  • the complex code is read by the reader (U21).
  • the cell arrangement of the first code of the composite code is recognized, and then the reference point is recognized (U22).
  • the color of the cell in the predetermined area is recognized according to the cell index of the first code (U23).
  • the cell index of the QR code is stored in the reader, if it is the first code of the original code, the cell index of the first code may be stored in the composite code; It may be stored.
  • integrated information (data) is generated from numerical information of each cell of the first code (U25). Then, the information processing corresponding to the first code is performed.
  • the data format information of the second code is included in the data, it is used in the subsequent processing of the second code (U26). If there is a specific cell index in the data format information of the second code, the specific cell index is referenced to recognize whether it is a specific cell (U27). Then, based on the specific cell index of the second code, numerical information defined by the shape and arrangement of the mark is acquired. If the reading order is specified in the data format information of the composite code, reading may be performed in an order different from the reading order of the first code (U28). The same processing is performed until reading of all cells is completed (U29). Subsequently, integrated information (data) is generated from the numerical value information of the specific cell of the second code based on the data format information of the second code (U30). Then, the information processing corresponding to the second code is performed (U31).
  • a conventional QR code reader may be used to capture an image of the compound code and acquire and process only the data of the QR code portion, or the compound code reader may read the image of the compound code.
  • FIG. 149 in the case where there is no correction by the second code, that is, similar to FIG. 146 in which the data of the second code can be obtained only by the correction element by the original first code, Fig. 6 illustrates a reading procedure for performing the processing of a specific cell of the second code during the processing of the cell of the code.
  • the complex code is read by the reader (U21).
  • the cell arrangement of the first code of the composite code is recognized, and then the reference point is recognized (U22).
  • the color of the cell in the predetermined area is recognized according to the cell index of the first code (U23).
  • the cell index of the QR code is stored in the reader, if it is the first code of the original code, the cell index of the first code may be stored in the composite code; It may be stored.
  • a conventional QR code reader may be used to capture an image of the compound code and acquire and process only the data of the QR code portion, or the compound code reader may read the image of the compound code.
  • FIG. 150 in the case of performing correction by the reference cell which defines the reference point and the reference pattern in advance by the second code, as in FIG. 149, while the cell of the first code is being processed, specifying the second code Fig. 6 illustrates a reading procedure for performing processing of a cell.
  • the complex code is read by the reader (U21).
  • the cell arrangement of the first code of the composite code is recognized, and then the reference point is recognized (U22).
  • the predetermined area of the reference cell of the second code in which the predetermined area is arranged is recognized from the vicinity of the reference point calculated by the first code, and various types described in the fifth and tenth embodiments will be described.
  • the reference point is corrected using any of the algorithms (U32A).
  • the color of the cell in the predetermined area is recognized according to the cell index of the first code (U23).
  • the cell index of the QR code is stored in the reader, if it is the first code of the original code, the cell index of the first code may be stored in the composite code; It may be stored.
  • each cell it is determined whether it is a specific cell registered as a second code. That is, it is determined whether or not the cell is a specific cell by referring to the specific cell index (U29A). Then, based on the specific cell index of the second code, numerical information defined by the shape and arrangement of the mark is acquired. Numerical information may be acquired based on the shape and arrangement of the marks of the pattern including the reference pattern (U28). The same processing is performed until the recognition of the cells of all the first codes is finished (U24). Next, integrated information (data) is generated from numerical information of each cell of the first code (U25). Then, the information processing corresponding to the first code is performed.
  • U26 and U31 may finally be implemented together.
  • the second code may be processed after the processing of the first code is completed.
  • a conventional QR code reader may be used to capture an image of the compound code and acquire and process only the data of the QR code portion, or the compound code reader may read the image of the compound code.
  • Reading procedure D In FIG. 151, correction is performed on the basis of a reference point within a predetermined area of a specific cell, which is an arrangement in which all the reference points can be calculated independently, instead of the reference cells defining the reference points and reference patterns in the second code.
  • a reading procedure is illustrated which implements the processing of a specific cell of the second code during the processing of the cell of the first code.
  • Cells in which the dot patterns described with reference to FIGS. 112 to 114 and FIGS. 116 to 117 are arranged, and FIGS. 146 (d) to 146 (f) and FIGS. 146 (s) to 146 (u)
  • An example is a composite code composed of partitioned cells described in FIG.
  • the predetermined color area and the same color mark are separated via the opposite color area, and neither the predetermined color area nor the same color mark is in contact with the cell boundary.
  • the same color mark as the predetermined area is separated via the area of the opposite color. Therefore, it is easy to extract the predetermined area and correction of the reference point is easy from that point of view.
  • the arrangement candidate positions are fixed in the divided cells for separation, and therefore the extraction of marks is also easy.
  • the predetermined area of the second code is recognized from the vicinity of the reference point calculated by the first code.
  • the complex code is read by the reader (U21).
  • the cell arrangement of the first code of the composite code is recognized, and then the reference point is recognized (U22).
  • the color of the cell in the predetermined area is recognized according to the cell index of the first code (U23).
  • the cell index of the QR code is stored in the reader, if it is the first code of the original code, the cell index of the first code may be stored in the composite code; It may be stored.
  • the correction of the reference point is performed based on the predetermined area of the specific cell extracted using any of various algorithms described in the fifth embodiment and the tenth embodiment (U32B). Then, based on the specific cell index of the second code, numerical information defined by the shape and arrangement of the mark is acquired (U28). The same processing is performed until the recognition of the cells of all the first codes is finished (U24). Next, integrated information (data) is generated from numerical information of each cell of the first code (U25). Then, the information processing corresponding to the first code is performed. If the data format information of the second code is included in the data, it is used in the subsequent processing of the second code (U26). Subsequently, integrated information (data) is generated from the numerical value information of the specific cell of the second code based on the data format information of the second code (U30). Then, the information processing corresponding to the second code is performed (U31).
  • U26 and U31 may finally be implemented together.
  • the second code may be processed after the processing of the first code is completed.
  • a conventional QR code reader may be used to capture an image of the compound code and acquire and process only the data of the QR code portion, or the compound code reader may read the image of the compound code.
  • Time-series composite code As in Examples 1 to 13, the first code is defined by defining 8-bit numerical information as a second code per cell in both light and dark colors. Can be stored, but by using time-series data in which only the second code changes with time, a vast amount of data can be stored.
  • the mark 3-0 forming the time-series data may be changed in shape, size, color, arrangement position, etc. in the time direction to increase the amount of information.
  • the reason for not changing the first code is that the capacity can not be increased significantly even if the first code is also changed, and the conventional QR code reader can not read the code.
  • the reference point coordinate value of each cell acquired by the first code is ( 1 x j , 1 y j )
  • the distance from the central coordinate value of the composite code (i 1) to the reference point of each cell Since is 1 x j - 1 x, 1 y j - 1 x
  • the reference point coordinate value ( i x j , i y j ) of the cell number j of the composite code number i can be obtained by the following equation.
  • FIG. 153 is a graph in which the horizontal axis represents the time axis (frame number) indicating the display of the time-series composite code, and 60 frames are displayed in one second. In any case, several frames of the composite code of the same number may be displayed, photographed by the reader to record a plurality of frames, and the complex code imaged well may be read therein.
  • the number (k) of the composite code forming one data may be stored in the first code, and the number of each composite code may be stored in the second code.
  • k composite codes can be read continuously, regardless of the reading order, from anywhere.
  • the k composite codes may be read twice or more and collated to perform error check.
  • the time-series composite code is displayed at 5 to 30 frames per second, and the position of the reference point of each cell of the composite code imaged next in the time direction is minimal, and which cell The identification of the cell number is not difficult because the movement of the slight reference point can be easily traced and recognized from a plurality of captured images.
  • the frame rate of the display device is N (the frame rate N of the current smartphone is 60 frames is large)
  • the same composite code is N / M. It will be displayed continuously in the frame.
  • the same composite code may be set to be displayed continuously for each L frame.
  • the same composite code is displayed four frames at a time in succession.
  • FIG. 153 (b) when the display of the 10 composite codes forming the data is finished, the data is ended by displaying only the first code and not displaying the second code in a predetermined number of frames. The information that means is displayed. Thereafter, the 10 composite codes forming the data are redisplayed.
  • This predetermined frame may contain an image unrelated to the composite code, or may store information such as a header in another format. However, in this case, the existing QR code reader can not read. Furthermore, the number k of composite codes forming the data, the number of times of display of data formed by k (such as how many times the data is displayed, etc.) may be stored. A second code may be included as a header in the predetermined frame, and data for error check, information for electronic signature, etc. may be stored in addition to the above information.
  • the predetermined number of frames is four in all cases, but may be set as long as it can be read, or may be set before the composite code (1). Needless to say, k composite codes may be read across the predetermined frame. As shown in FIG.
  • dummy codes may be arranged so that the change point of the code can be recognized without displaying the compound code. It is desirable that this dummy code be a single color. It is even more desirable if it is the color used in the composite code or the peripheral color of the composite code.
  • the first code may be used as a dummy code so that the first code can be recognized continuously. As a result, motion blur or the like at the time of shooting may be suppressed. Although four frames are shown in FIG. 153 (c), the number of frames is not limited as long as the effect is obtained. Furthermore, only the first code may be displayed in the predetermined frame. Then, if the first code is an existing two-dimensional code such as a QR code, the two-dimensional code reader can read it at any timing.
  • an error correction code may be provided to all the frames on the time axis of the cell.
  • an error correction code of the second code defined in the frame may be provided for a plurality of specific cells arranged in a predetermined area of the complex code for each frame. . Note that error correction coding may be performed by combining i) and ii) and conventional error correction in any way.
  • Example 17 Next Generation Settlement System (1)
  • a composite code is displayed on the display.
  • the purchaser activates the settlement dedicated application of the smartphone and reads the composite code, the purchased product, the amount of money, and the like are displayed. If you confirm that there is no mistake and tap the payment button, the purchaser's smartphone displays a composite code that allows withdrawals, and the store-side composite code reader (a dedicated reader, a smartphone, a tablet, or (It may be a camera connected to them), and when it is approved by the settlement company, the settlement is made at a predetermined time.
  • the store-side composite code reader a dedicated reader, a smartphone, a tablet, or (It may be a camera connected to them
  • the dedicated payment application constantly recognizes the balance and the usage slot, data can be stored in the digitally signed composite code including whether payment is possible and displayed on the purchaser's smartphone. Therefore, it is not necessary for the store-side POS system to receive approval via the net, etc., and settlement is possible even in the event of a disaster or a net failure. If the store side also reads the composite code displayed on the purchaser's smartphone by the dedicated payment application, the payment company may not have to approve the payment company on the spot. After that, net settlement may be performed based on the necessary information. Furthermore, in order to enhance security, the store side can simultaneously carry out identity verification if the user's face picture is stored in the compound code displayed on the purchaser's smartphone. By displaying the face photograph of the person only for a predetermined time, the data may not remain on the store side to prevent leakage of personal information.
  • the wireless point of the store POS may also be changed every time like a one-time password. The method of change may be time-dependent, or a wireless point to be used may be randomly selected from a plurality of wireless points. If the store side also authenticates the payment information transmitted from the smart phone of the purchaser by the corresponding dedicated payment application, it does not have to be approved by the payment company on the spot. After that, net settlement may be performed based on the necessary information.
  • a display connected to the store-side POS like a conventional credit card The buyer may sign on the Of course, the touch panel of the smartphone or tablet may be signed by a finger or a stylus pen.
  • the complex code may store the face photograph of the person to confirm the person.
  • Example 19 Ticket Person Identification System
  • a person's photograph is taken with a smartphone at the time of ticket acquisition, and the acquired code is a compound code Store personal photos with information.
  • the ticket issuer reads the compound code displayed on the ticket user's smartphone, and at the same time authentication of the acquired ticket information and identity verification based on the displayed face photo prevents resale or 'spoofing' it can.
  • the photograph of the principal may be provided to the third party.
  • the composite code reader equipped with the ultra-high-precision camera can simultaneously read the ticket user's face and the composite code. If the ticket user's face and the face picture stored in the compound code reader are subjected to face authentication, it can be automatically confirmed whether they are the same person.
  • shooting of the ticket user's face and reading of the face picture stored in the compound code reader may be performed by another device.
  • the finger pad may be photographed and stored in the compound code reader, and fingerprint matching may be performed by simultaneously reading the finger pad of the user and the compound code.
  • Identity verification application This is a dedicated application for the identity verification of a third party, and stores the face photograph of the identity in the composite code so that the third party can identify the identity in various scenes.
  • the personal information in the identity verification application in addition to taking a picture of the person, enter certain personal information such as resident card address, family register, my number, insurance card, license, passport, student card, employee ID card etc.
  • the dedicated application provider approves that the user is the user by photographing and registering. It is even more desirable if the driver's license, passport, etc. on which the photograph of the person is posted is taken at the same time and compared with the photograph of the person stored in the composite code. Face changes with age, making it difficult to recognize the person.
  • the personal identification application notifies the person with an alarm such as voice or text so that the user's picture is periodically recaptured.
  • the photographed photograph is compared with the photograph stored in the composite code, and if it can not be recognized as the same person, it is judged as 'spoofing' and the personal identification application can not be used.
  • the change in the face does not become such that the third party can not confirm the identity.
  • the identity verification application always automatically recognizes the person's face photo taken with a self-owned smartphone or taken by a third party If you detect a big change in the face, you can just notify the person with an alarm to retake the person's photo. Furthermore, the latest self-portrait or a face photograph of the person taken by a third party may be stored in the composite code.
  • the still picture composite code can store a color photograph of a level that can identify the user, but the time series composite code can store a clearer color picture and a short moving image.
  • Movement information provision means In movement means such as a bus or a railway, passengers can be provided by storing various information such as routes, stations and facilities in the vicinity, sightseeing, etc. in composite codes and in trains or at stations. Information that does not fit into the original QR code can be acquired from the composite code with a smartphone. If the composite code is displayed on the display, it is possible to acquire information such as the weather that changes during movement, including the position during movement.
  • the route from the departure point to the arrival point and the taxi fare can be stored in the composite code and displayed on the display on the taxi side to make sure that the passenger has traveled along the appropriate route. Code settlement can be carried out properly. With the spread of this service, it is also possible to prevent it from being "broken up.”
  • the passenger side is linked with a dedicated mobile map application, and it is stored in the composite code which route it wants to travel to the destination, read by the driver's composite code reader, and the passenger is properly displayed by navigation and voice output. You can tell the driver your desired route.
  • the composite code according to the present invention a large amount of information can be stored in the same code area by storing the second code in the area of the first code as compared to the case of using only the first code. It will be possible.
  • the composite code when the first code is a QR code and the second code is a dot code, the composite code is printed, the composite code is 10 times or more as large as that when only the QR code is printed.
  • the composite code When displayed on the screen of (1), by adding color information to the dot code and changing the time, information of 100 times or more that of the QR code can be stored.
  • the QR code ie the first code
  • it can store thousands of Japanese characters, photographs, voice information, etc. without using the Internet, and can be used widely from document management to entertainment, education, and sightseeing.
  • the data stored in the QR code ie the first code, can be read with a conventional QR code reader.
  • the composite code according to the present invention is suitable for use in various types of authentication. For example, printing of a QR code that enables authenticity determination of an electronic signature or URL, or displaying a QR code storing its own biometric information on a smartphone owned by itself, and identity verification by reading the other party (including the device) Etc. can be done easily.
  • the QR code currently discloses its specification, anyone can issue it, and a third party can issue the same code.
  • a mark such as a dot code is formed by a concealed new algorithm in addition to the QR code etc.
  • a unique compound code can be issued.
  • the possibility of the same code being issued by a third party is extremely low, and the security is extremely high.
  • the QR code is easy to copy and imitate, and there is a possibility that the information stored in the QR code may be acquired by an unintended third party by shoulder hacking or the like.
  • the second code is difficult to see and imitating.
  • the composite code according to the present invention has many advantages that can not be realized by conventional one-dimensional and two-dimensional codes.
  • the present embodiment further includes the following aspects.
  • a second cell in which a specific cell having an area excluding the predetermined area is formed in at least a part of the plurality of cells, and data is defined by an identifiable mark disposed at a predetermined position in the area excluding the predetermined area With code Composite code with.
  • the predetermined area has an arbitrary shape, The composite code according to aspect 1 or 2.
  • At least a part of cells other than the specific cell includes the predetermined area and an area excluding the predetermined area, and each has a color distinguishable from each other.
  • the predetermined area is surrounded by an area excluding the predetermined area, and each has a distinguishable color.
  • the predetermined areas in the plurality of cells include reference points for recognizing the color of each cell, A composite code according to any one of aspects 1-5.
  • a reference pattern formed including the position of the identifiable mark and the orientation of the reference point and the second code is disposed in any of the plurality of cells.
  • the orientation of the second code is defined by any of the shape, arrangement, and marks of two or more different sizes that form the reference pattern.
  • the reference point is a center of a predetermined area of each of the cells.
  • the area of the predetermined area is 1/10 or more of the area of each of the cells.
  • the area of the predetermined area is 1/20 or more of the area of each of the cells.
  • the area of the predetermined area is about 60% or more of the area of each of the cells. 20.
  • the color of the mark includes the same color as the predetermined area in which the mark is arranged. 22.
  • the arrangement position of the mark is set to any one of an area obtained by dividing at least an area excluding the predetermined area of the specific cell.
  • the mark has one of a color of the predetermined area and two or more colors distinguishable from each other at the predetermined position where the mark is arranged or an area including the predetermined position.
  • 26. A composite code according to any one of aspects 1-24.
  • data is defined by at least one of a shape, a size, a color, an orientation, and an arrangement pattern of the mark. 26.
  • the shape of the mark is any shape, 26.
  • the composite code according to aspect 26 is any shape, 26.
  • the color of the mark includes any of at least red, green, blue, cyan, magenta, yellow, black, white and the color of the predetermined area, which are distinguishable from each other.
  • 26. A composite code according to any one of aspects 1-27.
  • the size of the mark is a mark that is difficult to visually recognize from a predetermined distance, 30.
  • the composite code is formed on a medium, displayed on a display device by output from an electronic medium, broadcast medium, storage medium or communication medium, etc., or formed of digital information in an electronic medium. 30.
  • At least the second code is formed by a plurality of codes,
  • the plurality of codes may be displayed on the display device as time series data in a predetermined order in a time axis direction, or may be formed at a predetermined position of the medium.
  • a first code in which a plurality of cells are arranged in an array shape, each having a predetermined area, and the predetermined area having any one of two or more colors distinguishable from each other;
  • a second code in which data is defined by an identifiable mark disposed at a predetermined position in an area excluding the predetermined area in a specific cell forming at least a part of the plurality of cells;
  • a complex code with In a specific area provided in at least one of the first code and the second code, an area excluding the specific area of at least one of the first code and the second code Compound code containing specific information corresponding to at least a part of
  • At least a part of the area excluding the specific area includes at least a name, a gender, a date of birth, an address, a family register, biometric information, and other information specifying an individual. 40.
  • the specific information is encoded information obtained by encoding at least a part excluding the specific area by an encoding unit. 40.
  • the specific information is encrypted information in which the encoded information is encrypted by an encryption unit.
  • 36 The composite code according to aspect 36.
  • At least a part excluding the specific area includes a program to be executed by the information processing apparatus as the decoding unit. 40.
  • the encryption information is information obtained by encrypting the encoding information using the secret key by the encryption unit, The decryption unit decrypts the encrypted information using a public key. 40.
  • the composite code according to any of aspects 38 or 39.
  • the encoding means is a hash function
  • the encoded information encoded by the hash function is a hash value
  • the encrypted information encrypted by the encryption means is an encrypted hash value
  • the encrypted hash value can be decrypted into the hash value by the decryption unit. 40.
  • the specific information is information represented by at least a part of the at least one code excluding the specific area, or electronic signature information created by electronic signature means based on the encoded information, and the electronic signature information Is verifiable by the verification means to have a predetermined relationship with the information represented by at least a part of the at least one code excluding the specific area, 40.
  • a composite code according to any of aspects 36-41.
  • At least one of a mark, graphics and / or text for clarifying the composite code is formed inside the first code, 43.
  • the composite code according to any one of the aspects 1-42.
  • At least a part excluding the specific area according to any one of the aspects 33 to 42 is a data conversion of information corresponding to at least one of a character and an image formed on the medium, and the vicinity of the information Or the composite code is formed inside, 44.
  • the medium of aspect 44 is a data conversion of information corresponding to at least one of a character and an image formed on the medium, and the vicinity of the information Or the composite code is formed inside, 44.
  • the reference point of the cell acquired by the first acquisition means is Correction based on the coordinate value of the reference point acquired by the second acquisition unit, Read the second code, 50.
  • the compound code reader according to aspect 47 is
  • At least one of the first code and the second code includes information identifying an individual, The information specifying the individual is at least information on any of name, gender, date of birth, address, family register, and biometric information, 50.
  • a composite code reader according to any of aspects 46-49.
  • At least one of the first acquisition unit, the second acquisition unit, the third acquisition unit, and the output unit functions by processing of one or more processors. 50.
  • the encryption information is information obtained by encrypting the encoding information using the secret key by the encryption unit,
  • the decryption unit decrypts the encrypted information using the public key.
  • 50. The compound code reader according to aspect 54.
  • Aspect 56 Second encoded information encoded by the second encoding unit according to aspect 53; The correctness of the specific information described in Aspect 33 is determined by collating the coding information decoded by the decoding means. 50.
  • a computer is configured by arranging a plurality of cells in an array, each having a predetermined area, and the predetermined area having data defined by having any of two or more colors which can be distinguished from each other.
  • a first generation step of generating code A second code is generated in which data is defined by an identifiable mark arranged at a predetermined position in an area excluding the predetermined area in a specific cell forming at least a part of the plurality of cells. Execute the generation step, 44.
  • a composite code generation method which generates the composite code according to any one of aspects 1-43.
  • a computer is configured by arranging a plurality of cells in an array, each having a predetermined area, and the predetermined area having data defined by having any of two or more colors which can be distinguished from each other.
  • Get the code In a specific code forming at least a part of the plurality of cells, a compound code for acquiring a second code in which data is defined by an identifiable mark arranged at a predetermined position in an area excluding the predetermined area.
  • the reading method 44.
  • a plurality of cells are arranged in an array shape, each having a predetermined area, and the data is defined by the predetermined area having any of two or more colors distinguishable from each other.
  • a first generation step of generating code A second code is generated in which data is defined by an identifiable mark arranged at a predetermined position in an area excluding the predetermined area in a specific cell forming at least a part of the plurality of cells.
  • a complex code generator for executing the generation step, 44.
  • a composite code generation program for generating the composite code according to any one of aspects 1-43.
  • a computer is configured by arranging a plurality of cells in an array, each having a predetermined area, and the predetermined area having data defined by having any of two or more colors which can be distinguished from each other.
  • Get the code In a specific code forming at least a part of the plurality of cells, a compound code for acquiring a second code in which data is defined by an identifiable mark arranged at a predetermined position in an area excluding the predetermined area A reader and 50.
  • a compound code reading program for reading the compound code according to any one of the aspects 1-43.
  • a plurality of cells are arranged in an array, each having a predetermined area, and the predetermined area generates one or more first codes whose data is defined by having any of two or more colors distinguishable from each other.
  • First generating means for generating A second code is generated in which data is defined by an identifiable mark arranged at a predetermined position in an area excluding the predetermined area in a specific cell forming at least a part of the plurality of cells.
  • Generation means A complex code generator comprising: 44.
  • a composite code generation device for generating the composite code according to any one of the aspects 1-43.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Toxicology (AREA)
  • General Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • Power Engineering (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Credit Cards Or The Like (AREA)
  • Image Processing (AREA)
  • Character Input (AREA)

Abstract

明色と識別されるセルと暗色と識別されるセルとをマトリクス状に配置してなる1次元あるいは2次元の画像において、情報表現からの読み取り困難性を低減しつつ、さらに情報量を増加する。複数のセルが配列形状に配置され、該複数のセルのそれぞれのセルが所定領域(2-0)を有し、該所定領域(2-0)に互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードと、前記複数のセルの少なくとも一部に前記所定領域(2-0)を除く領域(2-1)を有する特定セル(1-0)を形成し、該所定領域(2-0)を除く領域(2-1)の所定の位置に配置される識別可能なマーク(3-0)によりデータが定義される第2のコードと、を備え、前記特定セル(1-0)は、前記2以上の色のいずれの色のセルにも形成される、複合コードとした。

Description

複合コードパターン、生成装置、読み取り装置、方法およびプログラム
 本発明は、複合コードパターン、生成装置、読み取り装置、方法およびプログラムに関する。
 従来から、バーコード等の1次元コード、QRコード(登録商標)等の2次元コード等、画像による様々な情報表現が提案されている。これらの情報表現は、例えば、明色と識別されるセルやスペースと暗色と識別されるセルやバーとをマトリクス状に配置してなる、1次元あるいは2次元の画像が用いられる。
 また、例えば、QRコード(登録商標)のセルのうち、少なくも一部のセルが、より微細なサブセルによってマトリクス状に細分化された拡張セルを用いることも提案されている。
特許第6061075号公報 特許第2938338号公報
 ところで、これらの情報表現では、明度等の色の要素によって識別可能な2種類以上のセルが配置されてコードの情報が表現される。現在の情報表現では情報量が少ない場合が多々ある。元々、これらの情報表現では、画像が形成される媒体面での単位面積当りの情報量(以下、情報密度)を向上させるため、セルの寸法が小さく設定されている。セルの寸法が小さく設定された情報表現において、高解像度のコード読み取り装置が必要になる。さらに、セルが細分化されると、細分化されたセルの判別が困難になる可能性が大きくなる。
 したがって、従来の技術では、明色と識別されるスペースやセルと暗色と識別されるバーやセルとを、配列状に配置してなる、1次元あるいは2次元コードの画像において、セルやスペース/バーの寸法が小さく設定された情報表現において、さらに、情報量を増加させるときに、情報表現からの読み取り困難性に対する配慮がなされていない。そこで、本発明の1つの側面は、1次元あるいは2次元の画像において、コード情報表現からの読み取り困難性を低減しつつ、さらに情報量を増加することを目的とする。
 1つの側面では、本発明は、複合コードパターンとして例示できる。本複合コードパターンは、識別可能な2以上の色のいずれかをそれぞれ少なくとも一部の領域に有する複数のセルが配列形状に配置された第1のコードと、前記配置されたセルのいずれか1以上の特定セル内で、マークが配置された第2のコードと、を備えた複合コードパターンである。
 本複合コードパターンでは、1次元あるいは2次元コードの画像において、情報表現からの読み取り困難性を低減しつつ、さらに情報量を増加することが可能となる。
QRコードの構造を例示する図である。 情報セルの一部をさらに細分化したサブセルを含むQRコードの構造を例示する図である。 第2のコードをサブセルよりも小さいドットで表現するパターンを例示する図である。 第2のコードの例を示す図である。 第2のコードの例を示す図である。 第2のコードの例を示す図である。 第1のコード内での第2のコードの配置位置について説明する図である。 第1のコード内での第2のコードの配置位置について説明する図である。 第1のコード内での第2のコードの配置位置について説明する図である。 第1のコード内の暗色セルに第2のコードの配置する図である。 第1のコード内での第2のコードの配置位置について説明する図である。 第1のコード内での第2のコードの配置位置について説明する図である。 第1のコード内での第2のコードの配置位置について説明する図である。 第2のコードを形成するセル内のパターンの配置について説明する図である。 第2のコードを形成するセル内のパターンの配置について説明する図である。 第2のコードを形成するセル内のパターンの配置について説明する図である。 第2のコードを形成するセル内のパターンの配置について説明する図である。 第2のコードを形成するセル内のパターンの配置について説明する図である。 第2のコードを形成するセル内のパターンの配置について説明する図である。 線分の先端が仮想点となる線分による第2のコードの例である。 線分の中心が仮想点となる線分による第2のコードの例である。 線分の長さが複数段階に変更された第2のコードの例である。 線分を所定の比率で内分する位置が仮想点となる線分による第2のコードの例である。 QRコードのセル内にドットパターンを配置した複合コードの構成例(1)を示す図である。 QRコードのセル内にドットパターンを配置した複合コードの構成例(2)を示す図である。 QRコードのセル内にドットパターンを配置した複合コードの構成例(3)を示す図である。 QRコードのセル内にドットパターンを配置した複合コードの構成例(4)を示す図である。 QRコードのセル内にドットパターンを配置した複合コードの構成例(5)を示す図である。 QRコードのセル内にドットパターンを配置した複合コードの構成例(6)を示す図である。 QRコードのセル内にドットパターンを配置した複合コードの構成例(7)を示す図である。 QRコードのセル内にドットパターンを配置した複合コードの構成例(8)を示す図である。 実施形態1に係る複合コードによるサービスを提供する情報システムの構成を例示する図である。 情報処理装置のハードウェア構成を例示する図である。 コンテンツサーバによる複合コード生成処理Aを例示するフローチャートである。 ユーザ装置による複合コード読取処理Aを例示するフローチャートである。 セル内の第2のコードの解析処理の詳細を例示するフローチャートである。 実施形態2に係る情報システムの構成を例示する図である。 複合コード生成処理Bを例示するフローチャートである。 複合コード読取処理Bを例示するフローチャートである。 実施形態3における複合コードの読み取り処理を例示するフローチャートである。 印刷された暗色セルとピクセルの関係を例示する図である。 暗色セルに明色のドットを形成した例である。 明色セルに暗色のドットを形成した例である。 バウンディングボックスによるドットの位置の判定方法を例示する図である。 5×5pixelで印刷したセルにドットコードを形成した例である。 7×7pixelで印刷したセルにドットコードを形成した例である。 処理例1の真贋判定のための複合コード生成処理を例示する図である。 処理例1の複合QRコード読み取り・認証処理を例示するフローチャートである。 処理例2の真贋判定のための複合コード生成処理を例示する図である。 処理例2の複合QRコード読み取り・認証処理を例示するフローチャートである。 処理例3の真贋判定のための複合コード生成処理を例示する図である。 処理例3の複合QRコード読み取り・認証処理を例示するフローチャートである。 処理例4の真贋判定のための複合コード生成処理を例示する図である。 処理例4の複合QRコード読み取り・認証処理を例示するフローチャートである。 処理例5の真贋判定のための複合コード生成処理を例示する図である。 処理例5の複合QRコード読み取り・認証処理を例示するフローチャートである。 処理例6の真贋判定のための複合コード生成処理を例示する図である。 処理例6の複合QRコード読み取り・認証処理を例示するフローチャートである。 処理例7の真贋判定のための複合コード生成処理を例示する図である。 処理例7の複合QRコード読み取り・認証処理を例示するフローチャートである。 セル内の情報ドットの配置候補位置を8か所配置した実施例である。 1つのセル内のドットの配置位置8か所を例示する図である。 QRコードの仕様にしたがって求めたセルの中央の座標位置が、セルの本来の中央からずれる画像の例である。 第2のコードの向きとバウンディングボックスを示した図である。 ドットコードが形成された明色セルの例である。 セルを撮像した画像の例である。 セルを撮像した画像の例である。 セルを撮像した画像を2値化した例である。 セルを撮像した画像を2値化した例である。 画像を2値化する処理例である。 情報ドットの中心座標値がバウンディングボックス内に納まっていることを例示する図である。 情報ドットの中心座標値がバウンディングボックス内に納まっていることを例示する図である。 暗色セルのみに基準ドットを配置してドットコードを形成した複合コードの例である。 第1のコードによってセルの中央として求められた座標位置がセルの本来の中央からずれている画像の例である。 複合コードの一部を示した実施例である。 セル内の情報ドットの配置候補位置を設定し、中央に基準ドットを配置した実施例である。 第1のコードによってセルの中央として求められた座標位置がセルの本来の中央からずれている画像の例である。 第2のコードの向きとバウンディングボックスを示した図である。 複合コードの一部を示した実施例である。 第1のコードによってセルの中央として求められた座標位置がセルの本来の中央からずれている画像の例である。 複合コードの一部を示した実施例である。 明色セルを縦横4分割して情報分割セルの配置候補位置と基準ドットを配置した実施例である。 第1のコードによってセルの中央として求められた座標位置がセルの本来の中央からずれている画像の例である。 第2のコードの向きとバウンディングボックスを示した図である。 複合コードの一部を示した実施例である。 明色セルを縦横5分割して情報分割セルの配置候補位置と基準分割セルを配置した実施例である。 第1のコードによってセルの中央として求められた座標位置がセルの本来の中央からずれている画像の例である。 第2のコードの向きとバウンディングボックスを示した図である。 複合コードの一部を示した実施例である。 明色セルを縦横5分割して情報分割セルの配置候補を配置した実施例である。 第1のコードによってセルの中央として求められた座標位置がセルの本来の中央からずれている画像の例である。 第2のコードの向きとバウンディングボックスを示した図である。 情報分割セルの配置候補位置を上下左右に隣り合わないように12か所配置した実施例である。 バウンディングボックスについて示す図である。 バウンディングボックスを移動させた状態を示す図(1)である。 バウンディングボックスを移動させた状態を示す図(2)である。 バウンディングボックスを移動させた状態を示す図(3)である。 バウンディングボックスを移動させた状態を示す図(4)である。 バウンディングボックスを移動させた状態を示す図(5)である。 バウンディングボックスを移動させた状態を示す図(6)である。 バウンディングボックスを移動させた状態を示す図(7)である。 バウンディングボックスを移動させた状態を示す図(8)である。 基準パターンを有する複合コードの実施例である。 基準パターンを2個のセルに分けて配置した複合コードの実施例である。 基準パターンを有する複合コードの実施例である。 明色および/または暗色のセルの所定間隔毎に基準パターンを複数配置した複合コードの実施例である。 基準ドットと基準分割セルによる基準パターンを配置した複合コードの実施例である。 2個のセルに基準分割セルを配置して基準パターンとした複合コードの実施例である。 ディレクションドットを加え、第2のコードの向きを設定した複合コードの実施例である。 基準パターンを構成する基準ドットの配置を変えて、第2のコードの向きを設定した複合コードの実施例である。 所定領域の明暗でセルの明暗を表し、情報ドットを暗色で示した複合コードの一部を示した例である。 所定領域の明暗でセルの明暗を表し、情報ドットを暗色で示した複合コードの一部を示した例である。 (a)は暗色セル内の情報ドットの配置候補位置に番号を設定した例であり、(b)は明色セル内の情報ドットの配置候補位置に番号を設定した例であり、(c)は図113(a)の配置具体例および対応する数値データの例であり、(d)は図113(b)の配置具体例および対応する数値データの例である。 暗色の所定領域の基準点を仮想線で結んで形成した格子を例示する図である。 情報ドット以外の領域をセルの明暗色にした複合コードの一部を示した例である。 所定領域の明暗でセルの明暗を表し、所定領域を除く領域を反対色にした複合コードの一部を示した例である。 明色および暗色の所定領域の基準点を仮想線で結んで形成した格子を例示する図である。 明色および暗色基準セルを配置し、情報ドットを暗色で示した複合コードの一部を示した例である。 バージョン6のQRコードに基準セルを配置した例の図である。 QRコードの読み取り手順を例示するフローチャートである。 (a)は形成されたQRコードの画像であり、(b)は実際に撮像されるQRコードの画像であり、(c)は撮像されたQRコードを2値化した画像であり、(d)はファンダーパターンおよびアライメントパターンの中心座標を示す図であり、(e)はすべてのセルの中心座標を示す図である。 基準セルを基にした格子による基準点の補正方法を例示した図である。 明色および暗色基準セルの基準点を仮想線で結んで形成した格子の一部を例示する図である。 明色および暗色基準セルの基準点を結んだ線を基に形成した格子を例示する図である。 変形所定領域を有する明色基準セルを配置し、情報ドットを暗色で示した複合コードの一部を示した例である。 明色および暗色基準セルの基準点を仮想線で結んで形成した格子の一部を例示する図である。 基準パターンを定義する明色および暗色基準セルを配置し、情報ドットを暗色で示した複合コードの一部を示した例である。 基準パターンを定義する明色および暗色基準セルの基準点を仮想線で結んで形成した格子の一部を例示する図である。 基準パターンを定義する明色および暗色基準セルを配置し、情報ドットを暗色で示した複合コードの一部を示した例である。 基準パターンを定義する明色および暗色基準セルの基準点を仮想線で結んで形成した格子の一部を例示する図である。 所定領域の明暗でセルの明暗を示した複合コードの一部を示した例である。 所定領域の明暗でセルの明暗を示した複合コードの一部を示した例である。 (a)はセルを6x6ピクセルで示した図であり、(b)はセルを2x2ピクセルの区画で示した図であり、(c)は図131(b)の所定領域を暗色に示した図であり、(d)は図131(b)の所定領域を明色に示した図であり、(e)は図131(c)の配置具体例および対応する数値データを示した図であり、(f)は図131(d)の配置具体例および対応する数値データを示した図である。 明色および暗色の所定領域の基準点を仮想線で結んで形成した格子を例示する図である。 暗色基準セルを配置した複合コードの一部を示した例である。 暗色基準セルの基準点を仮想線で結んで形成した格子の一部を例示する図である。 明色および暗色基準セルを配置した複合コードの一部を示した例である。 明色および暗色基準セルの基準点を仮想線で結んで形成した格子の一部を例示する図である。 基準パターンを定義する明色および暗色基準セルを配置した複合コードの一部を示した例である。 基準パターンを定義する明色および暗色基準セルの基準点を仮想線で結んで形成した格子の一部を例示する図である。 変形所定領域を有する暗色基準セルを配置した複合コードの一部を示した例である。 基準パターンを定義する暗色基準セルの基準点を仮想線で結んで形成した格子の一部を例示する図である。 基準パターンを定義する明色および暗色基準セルを配置した複合コードの一部を示した例である。 基準パターンを定義する明色および暗色基準セルの基準点を仮想線で結んで形成した格子の一部を例示する図である。 (a)はセルを6x6ピクセルで示した図であり、(b)はセルを1x2ピクセルの区画で示した図であり、(c)は図143(b)の所定領域を暗色に示した図であり、(d)は図143(b)の所定領域を明色に示した図であり、(e)は図143(c)の配置具体例および対応する数値データを示した図であり、(f)は図143(d)の配置具体例および対応する数値データを示した図である。 セルを8x8ピクセルで示した図である。(a)は所定領域が4x4ピクセルでマーク間に空隙がある例を示す図であり、(b)は(a)の所定領域を暗色に示した図であり、(c)は(a)の所定領域を明色に示した図であり、(d)は所定領域が2x2ピクセルでマーク間に空隙がある例を示す図であり、(e)は(d)の所定領域を暗色に示した図であり、(f)は(d)の所定領域を明色に示した図であり、(g)は変形の所定領域を示す図であり、(h)は(g)の所定領域を暗色に示した図であり、(i)は(g)の所定領域を明色に示した図であり、(j)は所定領域が2x2ピクセルでマーク配置領域を明色領域が囲んでいる図であり、(k)は(j)の所定領域を暗色に示した図であり、(l)は(j)の所定領域を明色に示した図であり、(m)は所定領域が2x2ピクセルでマーク配置領域を所定領域と同色の領域で囲んでいる図であり、(n)は(m)の所定領域を暗色に示した図であり、(o)は(m)の所定領域を明色に示した図であり、(p)は所定領域が4x4ピクセルでマークの配置候補位置が12か所ある例を示す図であり、(q)は(p)の所定領域を暗色に示した図であり、(r)は(p)の所定領域を明色に示した図であり、(s)は所定領域が2x2ピクセルでマークの配置候補位置が12か所ある例を示す図であり、(t)は(s)の所定領域を暗色に示した図であり、(u)は(s)の所定領域を明色に示した図である。 複合コードの生成処理を例示するフローチャートである。 複合コードの読み取り処理を例示するフローチャートである。 複合コードの読み取り処理を例示するフローチャートである。 複合コードの読み取り処理を例示するフローチャートである。 複合コードの読み取り処理を例示するフローチャートである。 時系列複合コードの特定のフレーム中の基準座標の補正方法を例示した図である。 時系列複合コードの表示を示す時間軸(フレーム番号)を横軸にしたグラフである。
 以下、図面を参照して、一実施形態に係る情報処理装置について説明する。以下の実施形態の構成は例示であり、本情報処理装置は実施形態の構成には限定されない。
 [比較例]
 図1に、QRコードの構造を例示する。QRコードは、位置検出パターン(ファインダパターン)、アライメントパターン、タイミングパターン、フォーマット情報、データ及び誤り訂正符号を含む。ファインダパターンは、データの切り出し・傾きなどを検出するときに用いられる。アライメントパターンは、歪みによって生じる各セルの位置ずれを補正するときに用いられる。タイミングパターンは、白セルと黒セルが交互に配置され、シンボル内のモジュール座標を決定するのに使用される。フォーマット情報は、使用されている誤り訂正率とマスクパターンに関する情報を格納する。上記で述べたパターンあるいは情報が配置される領域以外の領域で、図1に斜線で示した領域に、データと誤り訂正符号が配置される。
 図2は、情報セルの一部をさらに細分化したサブセルを含むQRコードの構造を例示する。図のように、細分化されたサブセルは、セルを横方向および縦方向にそれぞれ4分割し、1つのセルを16分割した構造を有する。そして、セルが16分割されたサブセルの領域のうち、例えば、4隅のセルおよび中央の4個のセルを除く残り8個のサブセル(図2で、グレーで例示)に暗色を付与することにより、元々明暗1ビットの情報を8箇所、合計8ビットの情報に増加させる。
 しかしながら、図2の構成では、サブセルSC1とSC2のように、隣接する2つのサブセルが一体となって1つの同一色の領域となることが生じ得る。また、サブセルSC1とSC3のように、四隅のうちの1点で、2つの暗色の領域が接触することが生じ得る。また、サブセルSC1からSC8のすべてが、隣接するセルに接触している。したがって、サブセルSC1からSC8のいずれかに(例えば、サブセルSCk)、隣接するセルと同一色が指定された場合には、サブセルSCkと、隣接するセルとが一体となって同一色の連続する領域となることが生じ得る。
 このように、複数の暗色の領域が接続すると、読み取り分解能の限界では、単独のサブセルと、複数のサブセルの集まりとの識別が困難となる場合がある。一方、サブセルSC1に対して、サブセルSC4からSC8を組み合わせた場合のように、少なくとも1つの明色の領域を挟んで配置された暗色のサブセルの組み合わせによる情報表現では、それぞれ単独の暗色のサブセルが明色の領域で区分され、暗色の領域の輪郭が識別しやすくなる。したがって、少なくとも1つの明色の領域を挟んで配置された複数の暗色のサブセルの組み合わせは、読み取り分解能の限界においても、読み取り困難性が少ないとも言える。しかしながら、このように限定を追加することで、表現可能なビット数が低減する。
 例えば、仮に16個のサブセルに暗色の領域と明色の領域を配置する場合、サブセル以外の本来の暗色のセル(QRコードの黒セルなど)と区別するため、上記特許文献1では、暗色のサブセルは、1つのセル内に25%しか配置できないとされている。したがって、16個のサブセルのうち、最大4個のサブセルを暗色のセルとすることができ、定義可能なサブセルの配置の組み合わせは、16161616=1,820+560+120+16=2,516通りとなる。さらに、分割されたサブセルが無い場合を考慮すると、背景が白色の場合(つまり、1個も黒色の分割セルが無い場合)の1通りが追加される。
 この追加により、サブセルの配置の組み合わせは、理論上2,517通りとなる。したがって、図2のサブセルによる情報量は、11ビット<16161616+2<12ビットとなる。ただし、上記特許文献1では、情報設定可能なサブセル(可変部)を図2のSC1からSC8の8箇所に限定し、合計70通りの配色パターンによってデータを記録可能としている。上記特許文献1では、このような限定により、QRコードリーダーで拡張セルの色を確実に識別し得るようにしている。
 [実施形態1]
 本実施形態では上記比較例の問題を改善する情報表現が提案される。
 <複合コード>
 本実施形態では、QRコードで例示される第1のコードと、第1のコード内のドットパターンで例示される第2のコードとによって定義される複合コードによって情報を表現する。本実施形態では、第1のコードとしてQRコードを例示するが、第1のコードがQRコードに限定される訳ではない。第1のコードは、例えば、1次元のバーコードでもよいし、文字列で表現されるコードでもよい。また、本実施形態では、第2のコードとして、ドットパターンで表現されるコードが例示されるが、第2のコードがドットパターンによるコード(ドットコードともいう)に限定される訳ではない。
 <第2のコードの構成例>
 図3に、第2のコードをサブセルよりも小さいドットで表現するパターンを例示する。以下、第2のコードが設定されるセルを特定セルと呼ぶ。図3の例では、16個のサブセルの中心に、サブセルよりも小さな面積のドットを配置している。すなわち、図3の例では、16個のサブセルの中心が仮想点となっている。そして、仮想点にドットを配置するか、しないかで情報が表現される。ドットがマークの一例である。なお、図3では、サブセルの中心にドットを配置しているが、ドットの位置がサブセルの中心に限定される訳ではない。したがって、図3では、特定セルにおける座標情報を有する位置に1以上の仮想点を任意に設定していると言える。また、図3では、仮想点にドットを配置するか、しないかで情報が表現されるので、仮想点を基にしてマークを配置して数値データが定義されるといえる。
 例えば、セルの寸法を0.250mm×0.250mmとすると、16分割されたサブセルの寸法は、0.0625mm×0.0625mmとなる。一方、600dpiの解像度のプリンタで印刷可能な最小寸法は、25.4mm/600=0.042mmであり、ドットは0.042mm×0.042mmであり、印刷時のインクの染みだし等による輪郭の変位を考慮しても、0.050mm×0.050mm未満に収まることが経験的に分かっている。当然であるが、印刷の精度が高ければ、0.042mm×0.042mmに近づくことは言うまでもない。なお、さらに高い解像度、例えば、1200dpiの解像度のプリンタで印刷する場合には、さらに、精細な印刷が可能となる。
 図3の例では、セル面積は0.250×0.250=0.0625平方mmとなり、最大8個のドットによる面積は、0.0249×0.0249×3.14×8=0.0156平方mmとなる。この場合、通常の高精度の印刷機でドットを印刷した場合、良好でないケースであっても、セル面積に占めるドットの面積の割合は、24.96%となり、上記特許文献1の25%に概ね近い値となる。したがって、図3のドットパターンでは、161616161616161616=39,203通りのパターンの選択が可能となる。図3のドットパターンは、第1のコードの読取りに障害のないマークということができる。
 図2のサブセルと比較した図3のドットの特徴は、ドットとドットの間に、明色の領域が存在することにある。すなわち、上記比較例のように、図2のサブセルの場合には、隣接する2つのサブセル同士、あるいは、サブセルと隣接するセルとの間に同一色が設定され、その結果、同一色の領域が連続し、あるいは一体となる。すると、読み取り分解能の限界では、単独のサブセルと、複数のサブセルの集まりとの識別が困難となる場合がある。一方、図3の構成では、暗色のドットが明色の領域で明瞭に区分され、読み取り分解能の限界でも、暗色のドットの識別がしやすくなる。図3のドットパターンは、マーク同士が接触する配置が除外されているパターンの一例と言える。また、図3のドットパターンでは、マークが、特定セルとその特定セルに隣接するセルとの境界に接触する配置が除外されていると言える。なお、暗色の一例として黒色を例示でき、明色の一例として白色を例示できるが、本実施形態においてコード、パターンあるいはマークに用いる色が、黒色と白色に限定される訳ではない。例えば、暗色のセルが黒色のセルに限定される訳でもなく、明色のセルが白色のセルに限定される訳でもない。
 図4に、第2のコードの他の例を示す。図4は、セルを9分割した領域の中心にドットを3行3列で配置した例である。すなわち、図4の例でも、9個のサブセルの中心が仮想点となっている。そして、仮想点にドットを配置するか、しないかで情報が表現される。
 今、図3と同様、セルの寸法を0.25mm×0.25mmとし、ドットの直径を0.05mmとすると、ドットとドットとの境界線の間隔は、0.25/3-0.05=0.03mmとなり、図3の場合よりもさらに、ドット間の距離が拡がり、ドットとドットの識別が容易となる。図4の場合も、最大8個のドットを配置したとき、セル面積に占めるドットの面積の割合は、25.12%となり、上記特許文献1の条件に概ね近い値となる。また、図4のドットが表現可能な情報量は、=511通りとなり、概ね9ビットに近づく。図4のドットパターンは、マーク同士が接触する配置が除外されているパターンの一例と言える。また、図4のドットパターンでは、マークが、特定セルとその特定セルに隣接するセルとの境界に接触する配置が除外されていると言える。したがって、図4のドットパターンも、第1のコードの読取りに障害のないマークということができる。
 図5は、図4の変形例であり、ドットの配置を3列とし、1列目に3個、2列目に2個、3列目に3個のドットを配置したものである。そして、2列目のドットの行方向位置が1行目と2行目の間、および2行目と3行目の間となるようにドットが配置されている。すなわち、図5の例でも、1列目に3個のサブセルの中心、3列目に3個のサブセル中心、および2列目の1行目と2行目の境界線L1とその境界線に直交するセルの中心を通る縦線(一点鎖線で例示)との交点、および、2列目の2行目と3行目の境界線L2と上記縦線との交点が、それぞれが仮想点となっている。そして、仮想点にドットを配置するか、しないかで情報が表現される。
 したがって、図5の場合には、図4よりもさらに、ドット間の距離が拡がり、ドットとドットの識別が容易となる。図5の場合も、最大8個のドットを配置したとき、セル面積に占めるドットの面積の割合は、25.1%となり、上記特許文献1の条件に概ね近い値となる。また、図5のドットが表現可能な情報量は、=256通りとなり、8ビットとなる。図5のドットパターンは、マーク同士が接触する配置が除外されているパターンの一例と言える。また、図5のドットパターンでは、マークが、特定セルとその特定セルに隣接するセルとの境界に接触する配置が除外されていると言える。したがって、図5のドットパターンの、第1のコードの読取りに障害のないマークということができる。
 図6に、第2のコードのさらに他の例を示す。図6の例では、1つのセル内に仮想点(X1,Y1)が設定される。仮想点(X1,Y1)は、例えば、セルの左下点を原点(0,0)としたときの座標値で指定される。ただし、仮想点の位置に仮想点を示すマークが付される訳ではない。なお、仮想点の位置に基準点を示すマークを配置してもよい。そして、仮想点を中心に、半径dの仮想的な円周上に、所定の角度θ、例えば、45度間隔で、ドットを配置することで情報を定義できる。この場合、距離dを固定したとすると、ドット数を1個に限定すると、1つの仮想点の周りに3ビット情報を定義できる。また、最大8個のドットを使用する場合に表現可能な情報量は、図5の場合と同様である。したがって、また、図6では、仮想点を基にしてマークを配置して数値データが定義されるといえる。図6のドットパターンは、マーク同士が接触する配置が除外されているパターンの一例と言える。また、図6のドットパターンでは、マークが、特定セルとその特定セルに隣接するセルとの境界に接触する配置が除外されていると言える。また、図6でも、仮想点は、セル内に任意に設定できる。したがって、特定セルにおける座標情報を有する位置に1以上の仮想点を任意に設定していると言える。また、図6のドットパターンは、仮想点を起点としてマークが配置される方向および距離の少なくとも1つにより、数値データの一部が定義される一例と言える。
 以上のように、本実施形態では、比較例の1次元のバーコード、あるいは、QRコードのような2次元コードに対して、コードが採用するセルまたはセルを分割したサブセルを暗色で塗りつぶす代わりに、暗色の周囲が明色で囲まれるドットを採用する。このようなドットを例えば明色のセル内に配置することで、比較例のコードよりも高密度で、セル内に第2のコードを定義できる。
 なお、読み取り装置の読み取り分解能は様々であるが、一般的には、ドットの面積の合計が特定セルの面積に対して50%前後だと、識別可能な2以上の色(QRコード等の白色と黒色を使用する場合は、白いセルと黒いセル)のどちらであると判定するかが分からないので好ましくない。一般的には、33%以下(3分の1)であれば、特定セルが当該セルであると判定される。25%以下であれば、さらに好ましい。
 なお、図3から図6では、暗色の周囲が明色で囲まれるドットを配置する複合コードを例示したが、暗色のセル内に明色のドットを配置する場合も同様である。この場合、明色のドットが暗色の領域で明瞭に区分され、読み取り分解能の限界でも、明色のドットの識別がしやすくなる。
 <第1のコード内での第2のコードの配置位置>
 以下、図7から図13により、第1のコード内での第2のコードの配置位置について、QRコードを第1のコードとして説明する。ここで、第1のコード内での第2のコードの配置位置とは、第1のコードがQRコードのように、暗色のセルと明色のセルの組み合わせによって情報が表現される場合に、第2のコードが定義されるセル(上述のように特定セルという)の位置をいう。ここで、QRコードを第1のコードとすることは例示であり、第1のコードがQRコードに限定される訳ではない。
 本実施の形態のQRコードでは、左上を原点にして水平右方向をx方向、垂直下方向をy方向とし、位置情報(x,y)は、自然数m,nを用いて、x=0,1,2~m,y=0,1,2~nのように、表現する。一方、QRコードのデータ(第1のコード)は、右下からスタートしてデータが配置されていく。本実施の形態では、X方向のセル2つ分を基準として、右から左にデータが配置されていく。
 図7は、データ及び誤り訂正符号配置領域の明色のセル(図で白いセル)のみに第2のコードを配置した例である。図7で、第2のコードが形成される明色のセルには、1から178の通し番号が付されている。この通し番号は、本実施形態での説明上、各セル内のドットの配置による第2のコードを識別するための符号であって、実際のセルに形成されるパターン(図形形状)ではない。
 ただし、この通し番号は、第2のコードが付されるセルに付与されるユニークな識別情報ということができ、例えば、複合コードを生成する生成装置、あるいは、複合コードを読み取る読み取り装置における情報処理で使用される番号として理解できる。番号が付された各セルには、図3から図6で例示されるドットによる第2のコードが形成される。以下、セル内のドットによる第2のコードを表現する形状をドットパターンということにする。図7から図13の各図で、各セルに付される番号は、セル内のドットパターンを識別する番号ということができる。
 図7では、第1のコードの配置の順序と同様の順序で第2のコードを配置させたものである。すなわち、QRコードのセルのうち、右下からスタートしてX方向のセル2つ分を横並びにして、最初に右側のセル、次に左側のセルの順で走査し、明色のセル内に暗色のドットによる第2のコードを設定する。第2のコードとしては、例えば、図3から図6のものが例示される。ただし、第2のコードが図3から図6のものに限定される訳ではない。
 上述のように、図7の各セルに付された通し番号は、セル内のドットパターンの種類を特定するものではなく、ドットパターンが付されるセルを識別する情報と理解できる。図7の明色のセルのうち、第2のコードが付されるセルは、特定セルと呼ばれるものの一例と言える。また、図7の明色のセルに付与される識別情報は、特定セルインデックスと呼ぶことにする。特定セルインデックスは、上記の走査順で、各セルの座標値と一対一に対応づけられる識別情報である。特定セルインデックスにより順序付けされた数値データが定義された複数の特定セルから形成されるということができる。また、第2のコードの列は、特定セルインデックスにより相互に識別できる複数の特定セルにより形成されるということができる。
 なお、複合コード生成時、複合コードの生成装置が、第1のコード、例えば、QRコードのセル走査順と同一の走査順でセルを走査し、ドットパターンによる第2のコードが設定される場合には、複合コードの読み取り装置は、複合コードの生成装置と同一の順序で、セルを走査し、ドットパターンによる第2のコードから情報を復号すればよい。したがって、第1コード、例えば、QRコードのセル走査順と同一の走査順で生成された複合コードは、生成装置から情報を得ることなく、読み取り装置単独で読み取り可能である。読み取り装置が、生成装置と同一の走査順で、特定セルインデックスと、座標とを対応付けすればよいからである。
 一方、複合コード生成時、複合コードの生成装置が、第1のコード、例えば、QRコードのセル走査順と異なる走査順でセルを走査し、ドットパターンによる第2のコードが設定される場合には、複合コードの読み取り装置が複合コードから情報を復号するためには、特定セルインデックスと座標値とを対応づける情報が必要となる。以下の実施形態では、特定セルインデックスと座標値とを対応づける情報なしに複合コードの読み取り装置が複合コードから情報を復号する処理例と、読み取り装置が特定セルインデックスと座標値とを対応づける情報を付与されて複合コードから情報を復号する処理例が例示される。
 また、特定セルインデックスと座標値とを対応づける情報としては、特定セルインデックスと座標値とを直接対応づける場合と、すべてのセルの座標に基準となるインデックスを付与しておき、特定セルインデックスと基準となるインデックスを対応づけることで、特定セルインデックスと座標値とを間接的に対応づける場合が例示される。
 複合コードの読み取りでは、第1のコードの読み取りと第2のコードの読み取りを並行して実行する方法と、第1のコードの読み取りと第2のコードの読み取りを分けて2段階で実行する方法がある。第1のコードの読み取りと第2のコードの読み取りを並行して実行する方法では、第1のコードを形成する1つのセルの明色と暗色の判定後で、次のセルの明色と暗色の判定を行う前に、明色と暗色の判定が終了したセルについて、第2のコードを形成するドットパターンの存否が判定される。そして、ドットパターンが存在するセルに対して、ドットパターンの数値への復号が実行される。そして、所定数のセルを組み合わせた数値の集合単位で数値が統合されて、第2のコードが復号される。
 図8は、ファインダパターン周囲の白いセルにも第2のコードを配置した複合コードの配置例である。図8でも、図7と同様、セルの列(紙面に対して上下方向のセルの並び)が2列ずつ組となっている。そして、最初の2列は、下から上方向に走査したとき、左右のセルのうち、右側のセル優先で、明色のセルに通し番号が付されている。例えば、右端2列のうち、最下行では、左側に明色のセルがあるので、通し番号1が付される。また、下から2行目では、暗色のセルしかないので、通し番号が付されない。さらに、例えば、下から8行目では、左右両方のセルが明色であるので、右側のセル優先で通し番号6と7が付される。以下同様である。また、右から3列目と4列目については、上から下にセルが走査され、左右の2つのセルについては、やはり右側のセル優先で、明色のセルに通し番号が付される。
 図9は、図1で説明したファインダパターン及びアライメントパターンを含むすべての白いセルに第2のコードを配置した場合である。したがって、図1で説明したファインダパターンの周囲の明色のセル、タイミングパターン内の明色のセル、およびフォーマット情報中の明色のセルも、図7、図8のデータが配置されるセルと同様に、第2のコードが配置される。
 図10は、第2のコードが明色のセルだけでなく、暗色のセルに配置する複合コードの例である。この場合も、データ及び誤り訂正符号領域のみでなく、ファインダパターン及びアライメントパターン以外のセルに第2のコードを配置してもよい。また、ファインダパターン及びアライメントパターンを含むすべてのセル(明色のセルと暗色のセル)に第2のコードを配置してもよい。ここで、暗色のセルに第2のコードを配置する場合には、ドットは明色となる。図10では、図5に例示した構成と同様の構成で、特定セルインデックス27の暗色のセルに明色のドットを配置した構成が例示されている。
 図11は、第2のコードを構成するセル毎のドットパターンを所定個数の複数セルだけ繰り返した複合コードの配置例である。図11では、1から16の番号でセルの通し番号である特定セルインデックスが繰り返し配置されている。図11では、右下からスタートして、X方向のセル2つ分を基準として、右から左に1~16の特定セルインデックスに対応するドットパターンが配置されている。このように、所定数の第2のコード(ドットパターン)を繰り返し配置することで、読み取り装置は、第1のコード中の一部(例えば、QRコードの所定数のセル)から、第2のコードを読み取ることが可能となる。図11で例示されるように、所定個数の特定セルインデックス(1から16の番号)でひとまとめにされる第2のコードの部分をサブコードと呼ぶ。
 図11の複合コードの場合、セル内の第2のコードの種類を示す番号(例えば、1~16の番号)と、各セルの位置座標(または、各セルの通し番号)とを関連付けるテーブルが複合コードの生成装置側で生成され、読み取り装置に引き渡されるようにすればよい。ただし、第2のコードの配置規則を予め決めておくことで、読み取り装置側で、第2のコードが設定されたセルに生成装置と同一の規則で通し番号(特定セルインデックス)を生成するようにしてもよい。複合コードの読み取り装置は、上記規則にしたがって、各セル内の第2のコードから読み取った値を通し番号順に並べて数値を統合すればよい。
 なお、図11のように、所定数の通し番号(特定セルインデックス)が繰り返して各セルに設定される場合に、各セル内の第2のコード自体も、通し番号(特定セルインデックス)の繰り返しに整合していることが確認できるようにしてもよい。例えば、1~16の特定セルインデックスが付与されるN個(例えば16個)のセルのうち、先頭のセルには、第2のコードの先頭を示すドットパターンを付与し、末尾のセルには、第2のコードの末尾を示すドットパターンを付与してもよい。
 図12は、第1のコードの一例であるQRコード内の全ての明色のセルに、所定個数の第2のコードを構成するドットパターンを繰り返し配置した複合コードの配置例である。すなわち、図12は、図11で例示した通し番号(特定セルインデックス)を付与する規則を採用しつつ、全ての明色のセルに第2のコードを配置している。したがって、図12では、図9と同様、QRコード内の全ての明色のセル、すなわち、ファインダパターン、アライメントパターン等の明色のセルに第2のコードを配置可能とされる。
 この場合、QRコードの読み取り処理と第2のコードの読み取り処理とを並行して実行させる必要はない。例えば、第1のコードの読み取りが完了後、第2のコードの読み取りを行ってもよい。そこで、複合コードの第2のコード生成時および読み取り時に、左上の原点からスタートして下方向にセルが走査され、走査中に検出された明色セルに1~16のインデックスが付与される。図12の実施例では、セルの座標がX座標の最小値から最大値へ移動するとともに、Y座標の最大値から最小値へ移動し、さらに最小値から最大値へ順に移動する処理が繰り返される。
 さらに、図12では、特定セルインデックスは、最小値(1)から最大値(16)まで順に付与され、次に、最大値(16)から最小値(1)まで付与されている。この場合、複合コードの生成装置は、この特定セルインデックスに対応するドットパターンを各セルに設定し、複合コードを生成する。一方、複合コードの読み取り装置は、生成装置と同一の手順で、特定セルを検索して、生成装置と同一の規則で特定セルインデックスを設定し、複合コード中のセルの順序を決定し、第2のコードを復号すればよい。
 ただし、QRコード内の全ての白いセルに配置する場合でも、図7から図10で説明したのと同様に、生成装置は、第1のコードの配置順序(QRコードの走査順)と一致させて第2のコードを配置(特定セルインデックスを設定)してもよい。そして、読み取り装置は、QRコードの読み取り処理と第2のコードの読み取り処理とを並行して実行してもよい。
 図13は、QRコードの周辺の余白にドットを配置した複合コードの例である。QRコード内の全ての白いセルに加えて、さらに、クワイエットゾーン(QRコードの周りにある空白の部分)に第2のコードを配置可能としてもよい。また、図13の例では、生成装置および読み取り装置は、セルの移動に伴い、特定セルを検索し、第2のコードが設定された特定セルが見出されると、特定セルインデックスの最小値(1)から最大値(16)の範囲で順に設定する。
 <セル内のドットパターンの配置>
 図14から図23により、第2のコードを形成するセル内のドットパターンの配置について説明する。図14は、仮想点からの距離と方向で情報を定義するドットパターンの配置例である。仮想点からの距離と方向で情報を定義するドットパターンは、図6で例示されたドットパターンである。
 第2のコードは、セル内に仮想点を設定し、仮想点からドットまでの距離dおよび仮想点からドットまでの直線の方向の少なくとも一方で情報を定義する。仮想点の位置は、セルの原点に対して設定される。セルの原点は、例えば、セルの左下点を例示できるが、セルの原点の定義に限定がある訳ではない。図14では、距離dが固定値の場合が例示されている。ただし、距離dとして、複数の値をとることで、情報を定義してもよい。また、図14では、ドットが仮想点の周り(距離d)で、45度単位に配置され、数値データ000から111が定義されている。
 なお、セルの方向は、第1のコードで基準となる形状部分、例えば、QRコードのファインダパターン(図1参照)によって決定される。したがって、セル内のドットの仮想点に対して配置される方向は、ファインダパターンで決定される座標軸を基準に設定される。例えば、図14の各セルで、仮想点から右方向の軸を方向の基準とすると、数値000は、方向90度に対応する。また、数値001から数値111は、それぞれ数値000の方向から(例えば、方向90度から)時計回りに、45度単位で回転移動した方向に対応する。
 したがって、複合コードを生成する生成装置は、セル内に仮想点を設定し、数値データに対応する距離および方向で定まる位置にドットを形成し、印刷機による印刷、あるいは電子媒体・放送媒体・記憶媒体・通信媒体から画面への出力をすればよい。一方、複合コードを読み取る読み取り装置は、上記第1のコードで基準となる形状部分を基にセル内の仮想点と方向を設定し、仮想点からセル内で検出されたドットに至る距離と方向を認識し、ドットパターンから数値を復号すればよい。
 図15は、仮想点上にドットを配置するか、否かによって情報を定義する例である。仮想点上にドットを配置するか、否かによって情報を定義するドットパターンは、例えば、図3から図5で例示されたドットパターンである。
 したがって、複合コードを生成する生成装置は、セル内に仮想点を設定し、数値データに対応する仮想点上にドットを形成し、あるいはドットのない画像を形成し、印刷機による印刷、あるいは電子媒体・放送媒体・記憶媒体・通信媒体から画面への出力をすればよい。一方、複合コードを読み取る読み取り装置は、上記第1のコードで基準となる形状部分を基にセル内の仮想点を設定し、それぞれの仮想点でのドットの有無を認識し、ドットパターンから数値を復号すればよい。さらに、記憶媒体上に複合コードを記憶し、それをプログラムが復号化してもよい。つまり、仮想空間上で複合コードを生成・復号化することができる。
 図16は、図4に例示した第2のコードでの仮想点の設定例である。図16では、セルを3分割×3分割=9分割した領域の中心に、仮想点(X,Y)が設定される。すでに、図4で述べたように、明色のセルに暗色のドットを配置する場合には、9個の仮想点のうち、最大8個の仮想点にドットを配置することで、セル全体として、明色のセルとして判断され、かつ、仮想点に暗色のドットを配置することができる。
 図17は、図5に例示した第2のコードでの仮想点の設定例である。図17では、図16の3行3列の仮想点のうち、中央の列の2つの仮想点の行位置が、第1列の3つの仮想点と第3列の3つの仮想点の行位置の中間位置となるように配置される。
 図18は、仮想点位置の変形例である。仮想点位置は、図16、図17に限定されることなく、様々な仮想点を用いることができる。例えば、仮想点位置は、セル内に1個でもよいし、2以上であってもよい。例えば、仮想点位置は、セルの中心およびセルの中心からセルの四隅に向かう対角線上の位置に設けてもよい。また、仮想点をセル内に2個設ける場合には、仮想点は、セルの中心から1本の対角線上で、対角となる2つの隅に近い位置に設けてもよい。さらに、仮想点をセル内に3個設ける場合には、仮想点の1つは、対向するセルの2辺のうち、一方の辺の中点からセルの中心を結ぶ線上の当該一方の辺に近い位置に設け、残りの2つの仮想点は、当該一方の辺に対向する辺の両端に近い位置(対向する辺と対向する辺に直交する辺がなす2つの隅)に設けてもよい。
 図19は、ドットパターンによる情報を設定しないことを明示するセル内のドットパターンの例である。例えば、セル内に複数の仮想点を設けた場合、セル中心の仮想点にドットを配置した場合には、情報が未定義であることを意味するようにしてもよい。
 図20は、線分の先端が仮想点に位置する線分による第2のコードの例である。すなわち、図14のように仮想点の周りにドットを配置し、距離と方向で情報を定義する代りに、図20のように、仮想点の周りに線分を配置し、線分の長さと方向で情報を定義してもよい。線分がマークの一例である。また、図20の線分のパターンは、マーク同士が接触する配置が除外されているパターンの一例と言える。また、図20の線分のパターンでは、マークが、特定セルとその特定セルに隣接するセルとの境界に接触する配置が除外されていると言える。また、図20では、線分の方向および長さの少なくともいずれかによって数値データの一部を定義することができる。
 図21は、線分の中心が仮想点に位置付けられる線分による第2のコードの例である。また、図21でも、線分の方向および長さの少なくともいずれかによって数値データの一部を定義することができる。さらに、図22では、線分の長さが複数段階に変更されており、線分の長さが情報を定義する1つの要素となっている。なお、第2のコードとして線分を配置する場合に、仮想点の位置は、線分の中心に限定される訳ではない。例えば、図23は、線分の中心ではなく、線分を所定の比率で内分する位置(例えば、線分の端から1/3の位置)が仮想点に位置付けられる線分による第2のコードの例である。したがって、図22、あるいは図23でも、線分の方向および長さの少なくともいずれかによって数値データの一部を定義することができる。また、図20から図23では、線分中のいずれかの位置を仮想点上に配置することによって数値データの一部が定義されると言える。
 以上のように、図14から図23では、特定セルにおける座標情報を有する位置に1以上の仮想点を任意に設定していると言える。また、図14から図23では、仮想点を基にしてマークを配置して数値データが定義されると言える。なお、上記図14から図23では、明色の領域と暗色の領域によってマークを定義したが、例えば、R(赤)、G(緑)、B(青)のいずれか2つによって、マークを定義してもよい。したがって、図14から図23では、マークの形状、色、仮想点を基にしたマークの配置方法および配置の有無の少なくともいずれか1つにより、数値データの一部が定義される複合コードの一例ということができる。また、図14から図23では、第2のコードは、ドットまたは線分で定義された。しかし、マークの形状は、任意の多角形、または略円形であってもよい。
 <QRコードに実際にドットを配置した例>
 図24は、第1のコードの例としてのQRコードのセル内にドットパターンを配置した複合コードの構成例(1)を示す図である。構成例(1)では、第2のコードの例として、仮想点からの距離と方向で情報を定義するドットパターンが例示される。仮想点からの距離と方向で情報を定義するドットパターンは、図14で説明した通りである。図24では、QRコードの部分にハッチングパターンで塗りつぶされた暗色の領域と、ハッチングパターンの無い明色の領域が形成されている。また、明色の領域内の概ね中心付近に、プラス(“+”)のマークで、仮想点が例示されている。なお、プラス(“+”)等のマークは、仮想点の位置を図面上に例示するために記載されており、実際の複合コードには、プラス(“+”)等のマークは描画されない。また、仮想点の回りに、概ね45度単位で、ドットが各明色の領域に1つずつ例示されている。
 図25は、第1のコードの例としてのQRコードのセル内にドットパターンを配置した複合コードの構成例(2)を示す図である。構成例(2)では、第2のコードの例として、明色の領域内に仮想点が複数設けられ、仮想点上にあるか否かによって情報を定義する。図25では、1つの明色の領域に仮想点が4点設けられているが、本実施形態で、仮想点が4点に限定される訳ではない。
 図26は、第1のコードの例としてのQRコードのセル内にドットパターンを配置した複合コードの構成例(3)を示す図である。構成例(3)では、第2のコードの例として、明色の領域内に仮想点が複数設けられ、仮想点上にあるか否かによって情報を定義する。図25では、各明色の領域にドットが1個配置されているが、図26では、1つの明色の領域にドットが0点から3点設けられている。
 図27は、第1のコードの例としてのQRコードのセル内にドットパターンを配置した複合コードの構成例(4)を示す図である。構成例(4)では、第2のコードの例として、ドットパターンが定義される特定セルによって仮想点の数やドットの配置方法が異なる。すなわち、特定セルの位置に応じて、仮想点の数、仮想点の配置位置、仮想点に対するドットの配置の仕方を異なるものとしてもよい。仮想点に対するドットの配置の仕方には、例えば、図24のように、仮想点からの距離と方向で情報を定義するドットパターンの配置と、図25、図26のように、仮想点上にあるか否かによって情報を定義するドットパターンの配置が例示される。また、1つの明色の領域内のドットの数は、1個でも、複数でもよい。
 いずれにしても、複合コードを生成する生成装置と、複合コードから情報を取得する読み取り装置の間で、セル位置別に、第2のコードの定義の仕方を共通にしておけばよい。また、例えば、図1に例示したフォーマット情報中に、第2のコードの定義の仕方を特定するための情報を組み込んでおけばよい。
 図28は、第2のコードの例としてのQRコードのセル内にドットパターンを配置した複合コードの構成例(5)を示す図である。構成例(5)では、第2のコードの例として、暗色の領域に明色のドットを配置することによって情報を定義する。図28では、図26で例示される、明色の領域に暗色のドットを配置したドットパターンに対して、明色と暗色を入れ替えたドットパターンが例示されている。
 図29は、第2のコードの例としてのQRコードのセル内にドットパターンを配置した複合コードの構成例(6)を示す図である。構成例(6)では、第2のコードの例として、明色の領域に線分を配置することで情報を定義する。構成例(6)では、図20と同様、線分の先端が仮想点に位置付けられて線分が配置される。
 図30は、第2のコードの例としてのQRコードのセル内に線分のパターンを配置した複合コードの構成例(7)を示す図である。構成例(7)では、第2のコードが配置される特定セルによって異なる配置の仕方で線分が配置される。例えば、線分の先端が仮想点となる線分、線分の中心が仮想点となる線分、線分の長さが複数段階に変更され、線分の長さが情報を定義する1つの要素となるもの、線分を所定の比率で内分する位置が仮想点となる線分等を採用することができる。
 図31は、第2のコードの例としてのQRコードのセル内に線分のパターンを配置した複合コードの構成例(8)を示す図である。構成例(8)では、第2のコードが配置される特定セルごとに、第2のコードの例として、線分のパターンとドットパターンのいずれかが選択され、配置される。また、線分のパターンの配置の仕方、ドットパターンの配置の仕方が、特定セルごとに規定されている。このような第2のコードの配置の仕方は、複合コードを生成する生成装置と、複合コードを読み取る読み取り装置間で、共通にしておけばよい。
 さらに、図24から図31では、図示が省略されているが、明色の領域に定義する第2のコード(図24等)と、暗色の領域に定義する第2のコード(図28)とを組み合わせて複合コードを形成するようにしてもよい。
 <システム構成>
 図32は、複合コードによるサービスを提供する情報システムの構成を例示する図である。この情報システムは、管理サーバMS1と、コンテンツサーバCS1、CS2と、ユーザ装置UD1とがネットワークN1により接続される。また、この情報システムは、ネットワークN1には接続されないユーザ装置UD2を有するようにしてもよい。
 管理サーバMS1は、複合コード生成手段CGMと複合コード解析手段CAMを有する。複合コード生成手段CGMは、入力されたデジタルデータを複合コードに変換する。管理サーバMS1は、例えば、ネットワークN1を通じてコンテンツサーバCS1からデジタルデータを引き渡され、複合コード生成手段CGMにより、複合コードの画像データを生成し、コンテンツサーバCS1に返す。
 複合コード解析手段CAMは、入力された複合コードを解析し、元のデジタルデータに変換する。管理サーバMS1は、例えば、ネットワークN1を通じてユーザ装置UD1から複合コードの画像を引き渡され、複合コード解析手段CAMにより、元のデジタルデータを生成し、ユーザ装置UD1に返す。
 コンテンツサーバCS1は通信手段CMS1と複合コード出力手段COUT1を有する。コンテンツサーバCS1は様々なコンテンツ、あるいは、サービスをユーザ装置UD1、UD2等に提供する。コンテンツサーバCS1が提供するコンテンツは、例えば、放送媒体、通信媒体である、放送システムあるいは電子情報通信システムを通じてユーザ装置に提供される。コンテンツとしては、画像(静止画あるいは動画)を含むものを例示できる。放送媒体とは、例えば、テレビジョン放送等をいい、電磁波等でコンテンツを配信する媒体である。また、通信媒体とは、例えば、インターネット等をいい、有線あるいは無線のネットワークでコンテンツを配信する媒体である。
 コンテンツサーバCS1は、CD、DVD、ブルーレイディスク、USBメモリ等の記録媒体を介してコンテンツをユーザ装置UD1、UD2等に提供することもできる。さらに、コンテンツサーバCS1は、印刷媒体を介して、コンテンツをユーザ装置UD1、UD2等に提供することもできる。印刷媒体としては、例えば、紙、物体の表面等のインクにより画像を形成可能なものが例示される。
 コンテンツサーバCS1は、提供するコンテンツに関連するデジタルデータを管理サーバMS1にネットワークN1を通じて転送し、複合コードに変換させる。そして、コンテンツサーバCS1は、管理サーバMS1で変換された複合データを、ネットワークN1を通じて取得し、コンテンツとともに、ユーザ装置UD1、UD2等に提供する。コンテンツに関連するデジタルデータとは、提供されるコンテンツに関連する種々の文字情報、提供されるコンテンツに関連するURL、提供されるコンテンツに関連する識別情報、あるいはアクセスのための認証情報などである。
 コンテンツサーバCS2は、通信手段CMS2および複合コード出力手段COUT2に加えて、複合コード生成手段CG2を有する。したがって、コンテンツサーバCS2は、提供するコンテンツに関連するデジタルデータを複合コード生成手段CG2により、複合コードに変換することができる。したがって、コンテンツサーバCS2は、デジタルデータを管理サーバMS1に転送し、複合コードに変換させる必要はない。なお、通信手段CMS2および複合コード出力手段COUT2の機能は、上述したコンテンツサーバCS1の通信手段CMS1および複合コード出力手段COUT1と同様である。なお、コンテンツサーバCS1、CS2としては、例えば、放送局の放送装置と連携する情報処理装置、インターネット上でコンテンツを提供するサーバ、印刷会社その他において印刷装置、プリンタと連携するサーバ、印刷装置に内蔵されたコンピュータ等を例示できる。
 ユーザ装置UD1は、通信手段CMU1と、画像入力手段IIN1とを有する。画像入力手段IIN1は、放送媒体であるテレビジョン画面、通信媒体であるウェブコンテンツ上のグラフィックスオブジェクトを含む画面、記録媒体から出力されるグラフィックスオブジェクトを含む画面、あるいは印刷媒体に形成された印刷物から画像を入力する画像入力手段を有する。画像入力手段は、例えば、Charge Coupled Devices(電荷結合素子、CCD)、あるいはmetal-oxide-semiconductor(MOS)イメージセンサ、Complementary metal-oxide-semiconductor(CMOS)イメージセンサ等の撮像デバイスを有するスキャナあるいはカメラ等である。
 ユーザ装置UD1は、入力された画像そのもの、あるいは入力された画像中の複合コード部分を管理サーバMS1にネットワークN1を通じて転送し、複合コードでコード化されたデジタルデータを復元させる。そして、ユーザ装置UD1は、得られたデジタルデータとコンテンツサーバCS1、CS2等から提供されるコンテンツとを基に、デジタルデータに対応する処理を実行する。デジタルデータに対応する処理とは、例えば、デジタルデータに基づく、当該コンテンツの妥当性判定、当該コンテンツへのアクセスの可否判定、当該コンテンツのユーザへの提供方法の変形、当該コンテンツに関連する他のコンテンツの提供等である。
 ユーザ装置UD2は、画像入力手段IIN2に加えて、複合コード解析手段CA2を有する。ユーザ装置UD2は、複合コード解析手段CA2を用いて、入力された画像から複合コードでコード化されたデジタルデータを復元する。したがって、ユーザ装置UD2は、入力された画像および入力された画像中の複合コード部分を管理サーバMS1に転送し、デジタルデータを復元させる必要はない。そして、ユーザ装置UD2は、得られたデジタルデータとコンテンツサーバCS1、CS2等から提供されるコンテンツとを基に、デジタルデータに対応する処理を実行する。なお、ユーザ装置UD1、UD2としては、パーソナルコンピュータ、タブレット端末、スマートフォン等を例示できる。
 図33は、情報処理装置10のハードウェア構成を例示する図である。情報処理装置10は、本実施形態の管理サーバMS1、コンテンツサーバCS1、CS2、ユーザ装置UD1、UD2に適用可能である。情報処理装置10は、CPU11と、主記憶装置12と、外部機器を有し、プログラムにより情報処理を実行する。CPU11はプロセッサともいう。外部機器としては、外部記憶装置13、表示装置14、操作部15、通信インターフェース16、画像入力インターフェース17、画像出力インターフェース18を例示できる。
 CPU11は、主記憶装置12に実行可能に展開されたコンピュータプログラムを実行し、情報処理装置10の機能を提供する。主記憶装置12は、CPU11が実行するコンピュータプログラム、CPU11が処理するデータ等を記憶する。主記憶装置12は、Dynamic Random Access Memory(DRAM)、Static Random Access Memory(SRAM)、Read Only Memory(ROM)等である。さらに、外部記憶装置13は、例えば、主記憶装置12を補助する記憶領域として使用され、CPU11が実行するコンピュータプログラム、CPU11が処理するデータ等を記憶する。外部記憶装置13は、ハードディスクドライブ、Solid State Disk(SSD)等である。さらに、情報処理装置10には、着脱可能記憶媒体の駆動装置を設けてもよい。着脱可能記憶媒体は、例えば、ブルーレイディスク、Digital Versatile Disk(DVD)、Compact Disc(CD)、フラッシュメモリカード等である。
 表示装置14は、例えば、液晶ディスプレイ、エレクトロルミネッセンスパネル等である。操作部15は、例えば、キーボード、ポインティングデバイス等である。本実施形態では、ポインティングデバイスとしてマウスが例示される。通信インターフェース16は、ネットワークN1上の他の装置とデータを授受する。例えば、CPU11は、通信インターフェース16を通じて、ネットワークN1上の他の装置と通信する。また、通信インターフェース16は、放送装置に接続されてもよい。放送装置は、例えば、デジタルデータをベースバンド信号から、高周波信号に変換し、高周波アンプおよびアンテナを介して、変換された高周波を放送波として送信する。
 画像入力インターフェース17には、カメラ、スキャナ等が接続され、各種媒体から画像データを取得する。各種媒体としては、テレビ受像器の画面、コンピュータのディスプレイ、書籍等の印刷物、物体表面に形成された視認可能な絵柄等を例示できる。
 画像出力インターフェース18には、印刷装置、プリンタ等が接続され、印刷媒体に画像データを出力する。なお、図33では省略されているが、情報処理装置10は、画像入力インターフェース17を介して接続されるカメラ、スキャナ等を有してもよい。また、情報処理装置10は、画像出力インターフェース18を介して接続される印刷装置、プリンタ等を有してもよい。
 さらに、情報処理装置10が管理サーバMS1に適用される場合には、画像入力インターフェース17および画像出力インターフェース18はなくてもよい。また、情報処理装置10がコンテンツサーバCS1、CS2に適用される場合には、画像入力インターフェース17はなくてもよい。さらに、情報処理装置10がユーザ装置に適用される場合には、画像出力インターフェース18はなくてもよい。
 <処理フロー>
 図34から図36により、本情報システムにおける処理フローを説明する。以下、コンテンツサーバCS1およびCS2を総称して、単にコンテンツサーバCSと呼ぶことにする。すなわち、以下の処理は、コンテンツサーバCS1およびCS2のいずれが実行してもよい。また、ユーザ装置UD1およびUD2を総称して、単にユーザ装置UDと呼ぶことにする。すなわち、以下の処理は、ユーザ装置UD1およびUD2のいずれが実行してもよい。
 図34は、コンテンツサーバCSによる複合コード生成処理Aを例示するフローチャートである。複合コード生成処理Aとするのは、図38の複合コード生成処理Bと区別するためである。図34、図38の処理により、コンテンツサーバCSは、複合コード生成装置として処理を実行すると言える。図34の処理では、コンテンツサーバCSは、第1のコードの形状情報を生成する(S11)。例えば、第1のコードがQRコードである場合には、コンテンツサーバCSは、QRコードにおける明色のセルと暗色のセルの配置を決定する。
 次に、コンテンツサーバCSは、第2のコードに変換するデジタルデータを入力する(S12)。デジタルデータは、例えば、コンテンツサーバCSが提供するコンテンツに関連する情報である。デジタルデータは、例えば、コンテンツサーバCSが提供するコンテンツに関連付けられた記憶装置から入力される。
 次に、コンテンツサーバCSは、デジタルデータを2値符号化する(S13)。すなわち、コンテンツサーバCSは、デジタルデータを2進数の1次元ビット列に変換する。そして、コンテンツサーバCSは、2値符号化されたデータを第1のコードのセル毎のデータに分割する(S14)。すなわち、コンテンツサーバCSは、各セル内のドットパターンで表現可能な最大ビット数で、2値符号化されたデータを区切る。そして、コンテンツサーバCSは、区切られたデータを所定の規則にしたがって、第2のコードを配置可能なセルに割り当てる。
 第2のコードを配置可能なセルとは、例えば、第1のコードが明色のセルと暗色のセルの組み合わせによって定義され、暗色のドットによって第2のコードを定義する場合には、明色のセルである。また、第2のコードを配置可能なセルとは、例えば、第1のコードが明色のセルと暗色のセルの組み合わせによって定義され、明色のドットによって第2のコードを定義する場合には、暗色のセルである。コンテンツサーバCSは、例えば、図7、図8から図13等の所定の規則にしたがって、第2のコードを割り当てるセルと、割り当てる順序を決定する。なお、すでに図11に例示したように、コンテンツサーバCSは、第2のコードを形成する前記複数の特定セルを複数回繰り返して形成し、セルを割り当ててもよい。
 そして、コンテンツサーバCSは、第2のコードの形状情報を生成する(S15)。すなわち、コンテンツサーバCSは、S14の処理で、セルごとに区切られた2値符号化データをセル内の仮想点を基準に符号化される画像データに変換する。セル内の仮想点を基準に符号化される画像データは、例えば、図3から図6に例示したものである。そして、コンテンツサーバCSは、画像データを出力する(S16)。出力先は、例えば、プリンタ等による印刷媒体、ネットワークN1を介した電子情報配信によるユーザ装置UDの表示装置への出力、放送媒体を通じた配信等である。S11の処理およびS16の処理を実行するコンテンツサーバCSは、第1のコードを生成する第1の生成手段の一例を有するということができる。また、S12からS16の処理を実行するコンテンツサーバCSは、第2の生成手段の一例を有するということができる。したがって、コンテンツサーバCSは、第2の生成手段として、マークが特定セル内に複数個配置される場合には、マーク同士が接触する配置を除外すると言える。また、コンテンツサーバCSは、第2の生成手段として、特定セルとその特定セルに隣接するセルとの境界に接触する配置を除外すると言える。
 なお、コンテンツサーバCSがコンテンツサーバCS1である場合には、デジタルデータが管理サーバMS1に転送され、S13からS15の処理は、管理サーバMS1によって実行される。コンテンツサーバCS1は、管理サーバMS1で生成された画像データをプリンタ、ネットワーク上のユーザ装置UD、あるいは放送媒体等に出力すればよい。
 図35は、ユーザ装置UDによる複合コード読取処理Aを例示するフローチャートである。複合コード読取処理Aとするのは、図39の複合コード読取処理Bと区別するためである。図35、図39の処理により、ユーザ装置は、複合コード読み取り装置として処理を実行すると言える。図35の処理では、ユーザ装置UDは、画像入力インターフェース17を介して、スキャナあるいはカメラ等から入力される複合コードの画像を入力し、フォーマット、および第1のコードのセルの配置を認識する(S20)。例えば、ユーザ装置UDは、ファインダパターンにより、QRコードの向きを認識し、アライメントパターンにより画像の歪みを補正する。また、ユーザ装置UDは、タイミングパターンにより、セルの配置間隔を認識し、QRコードのデータおよび誤り訂正符号の配置位置を特定する。ユーザ装置UDは、以降、セル毎に、第1のコードの配置順で複合コードを処理する。例えば、ユーザ装置UDは、QRコードの右下隅のセルから上の方向に、右端2列のセルを順次処理し、2列分の処理が完了すると、3列目および4列目のセルについて、上から下に向かって順次処理する。以下、同様に2列ずつデータセルと誤り訂正符号のセルを処理する。以下、セルごとの処理を説明する。
 すなわち、ユーザ装置UDは、次のセルの画像を取得し、第1のコードを解析し、明暗を判定する(S21)。次に、ユーザ装置UDは、処理中のセル内に第2のコードが定義されているか否かを判定する(S22)。例えば、ユーザ装置UDは、S20で取得したフォーマットの情報から、仮想点の配置の仕方、および、仮想点に対するドットの配置の仕方を認識し、該当位置にドットが少なくとも1つあるか否かを判定する。そして、セル内に第2のコードが定義されている場合には、セル内の第2のコードを解析する(S23)。なお、第2のコードは、明色のセルに定義されたものでもよい。また、第2のコードは、図10のように暗色のセルに定義されたものでもよい。
 そして、ユーザ装置UDは、次のセルが未処理で残っているか否かを判定する(S24)。次のセルが未処理の場合、ユーザ装置UDは、処理をS21に戻す。一方、すべてのセルの処理が完了し、次のセルがない場合、ユーザ装置UDは、第1のコードの明暗判定で得られたビット列から、第1のコードをキャラクタごとに統合した情報を生成する(S25)。例えば、ユーザ装置UDは、明暗判定から得られたビット列をキャラクタに分離し、デジタルデータを生成する(S25)。S20、S21およびS25の処理を実行するユーザ装置UDは、第1のコードから数値データを取得する第1の取得手段を有するといえる。
 さらに、ユーザ装置UDは、第2のコードから得られたビット列を基に、デジタルデータを復元する(S26)。例えば、第2のコードが、図11のように、所定個数(例えば、16個)のセルの組み合わせで構成される場合、第1のセルから所定個数分のセルまでのドットパターンによるビット列を統合して、デジタルデータを復元する。S23の処理およびS26の処理を実行するユーザ装置UDは、第2のコードから数値データを取得する第2の取得手段を有するといえる。このとき、ユーザ装置UDは、S14において、コンテンツサーバCSが区切られたデータを、第2のコードを配置可能なセルに割り当てた規則と同一の規則にしたがって、第2のコードの組み合わせ順序を決定する。したがって、S26の処理を実行するユーザ装置UDは、特定セルを順序づける特定セルインデックスを生成する手段の一例を有すると言える。したがって、ユーザ装置UDは、例えば、図11に例示したように、第2のコードを形成する複数の特定セルが複数回繰り返して順序付けて、特定セルインデックスを形成してもよい。
 そして、ユーザ装置UDは、第1のコードおよび第2のコードから復元されたデジタルデータに対応する情報処理を実行する(S27)。例えば、ユーザ装置UDは、復元されたデジタルデータにしたがって、コンテンツを表示し、再生し、出力し、加工し、または、コンテンツに関連するデータを追加する等の処理を実行する。ただし、本実施形態において、S27の処理で実行される情報処理に限定がある訳ではない。なお、ユーザ装置UDがユーザ装置UD1である場合には、複合コードはユーザ装置UD1から管理サーバMS1に転送され、S20からS26の処理は、管理サーバMS1によって実行される。ユーザ装置UD1は管理サーバMS1での結果を取得し、S27の処理を実行すればよい。
 図36は、セル内の第2のコードの解析処理(図35のS23)の詳細を例示するフローチャートである。以下の処理は、ユーザ装置UDで実行されるものと説明する。しかし、上述のように、ユーザ装置UDがユーザ装置UD1である場合には、以下の処理は、管理サーバMS1で実行される。この処理では、ユーザ装置UDは、セル原点に対する仮想点を特定する(S230)。なお、S230の処理は繰り返し実行されるため、図36では、「次の仮想点」と記載されている。
 そして、ユーザ装置UDは、仮想点に対する次のドット位置を推定する(S231)。例えば、図6に例示したように、ドット位置が仮想点からの距離と方向を変えて配置されている場合には、各配置位置が順次推定される。一方、図3から図5のように、ドットが仮想点上に置かれる場合には、仮想点がそのまま推定された位置となる。
 そして、ユーザ装置UDは、ドット位置の画素を所定画素数分走査し、画素値の比率VP/VPを算出する(S232)。そして、比率VP/VPが基準値以下か否かを判定する(S233)。ここで、画素とは、スキャンあるいはカメラで取得された画像が画像メモリに保存されたときの画像メモリの配列要素をいう。ここで、VPは、ドット中心として推定される位置の画素値である。VPnは、ドット中心からn画素離れた位置の画素値である。VP/VPが基準値以下の場合、ドット中心として推定される位置の画素値に対して、ドット中心からn画素離れた位置の画素値の比率が十分に小さいことになる。そこで、ユーザ装置UDは、比率VP/VPが基準値以下の場合、ドットの存在を推定する基準値を充足すると判断する。
 そして、ユーザ装置UDは、比率がドットの存在を推定する基準値を充足する場合、ドット有りを記録する(S234)。一方、比率がドットの存在を推定する基準値を充足しない場合、つまり、比率VP/VPが基準値以下とならない場合、ユーザ装置UDは、ドットなしを記録する(S235)。
 次に、ユーザ装置UDは、仮想点に対するすべてのドット位置の処理を終了したか否かを判定する(S236)。仮想点に対するすべてのドット位置の処理を終了していない場合、ユーザ装置UDは、処理をS230に戻し、同一仮想点に対する次のドット位置を推定する。なお、仮想点上にドットが配置される場合には、S236の判定は不要である。
一方、仮想点に対するすべてのドット位置の処理を終了した場合、ユーザ装置UDは、全仮想点の処理を終了したか否かを判定する(S237)。そして、全仮想点の処理を終了していない場合、ユーザ装置UDは、処理をS230に戻し、次の仮想点の処理を実行する。
 また、全仮想点の処理を終了した場合、ユーザ装置UDは、ドット位置に対応するセル内のドットパターンの数値を確定する(S238)。すなわち、ユーザ装置UDは、ドットの配置から復元する数値を決定する。そして、ユーザ装置UDは、セル内のドットパターンの数値とセルの識別情報を保存する(S238)。セルの識別情報は、セルに付せられた通し番号でもよい。また、セルの識別情報は、例えば、QRコードにおけるセルの配置座標でもよい。セルの識別情報は、図11の例では、繰り返し設定される1から所定数(例えば16)までの特定セルインデックスでもよい。また、ユーザ装置UDは、セル内のドットパターンの数値とセルの識別情報と特定セルインデックスを組み合わせて保存してもよい。
 <実施形態1の効果>
 以上述べたように、本実施形態の情報システムでは、QRコードで例示される第1のコードのセル内に、ドットパターンによる第2のコードを定義した複合コードが採用される。例えば、コンテンツサーバCSが複合コードを生成し、放送媒体、通信媒体、記憶媒体、印刷媒体等の様々な媒体に複合コードを付与し、配布する。
 本複合コードは、明色のセル内では、暗色のドットが使用される。このような構成では、セル内でドットとドットが明色の領域で分離される。また、セル内のドットが隣接するセルと明色の領域で分離される。したがって、読み取り装置であるユーザ装置UDは、明瞭に第2のコードを認識できる。その結果、第1のコードによる情報量を増加させ、かつ、安定して復号することが可能となる。例えば、第2のコードが図5の形式の場合、1つのセルにおいて、256通り、8ビットの情報を定義できる。
 また、上記実施形態では、ユーザ装置UD2の複合コード解析手段CA2あるいは、管理サーバMS1の複合コード解析手段CAMは、画像入力手段IIN1、IIN2から取得した画像中のドットの存在が推定される位置(例えば、ドット中心と推定される位置)の画素値VPと、ドット中心と推定される位置から所定画素数(n画素)離れた位置の画素値VPとの比率が所定の条件を充足するか否かにしたがって、ドットの存在の有無を判定した。このような画素値の比を用いることで、明色の領域と暗色の領域との境界を精度よく判定できる。上記比率による判定では、例えば、第1のコードの一例として、QRコードの明色と暗色との判定において、全画素の75%以上が暗色画素のセルを暗色のセルとし、全画素の25%以下が暗色画素のセルを明色のセルをと判定する場合と整合する判定を行うことができる。さらに、仮に、ドットの有無を判定すべき領域に、照明のむら、影の影響、あるいは汚れ等が存在する場合でも、画素値の比率を計算することで、ドット中心と推定される位置の画素とドット中心と推定される位置から所定画素数(n画素)離れた位置の画素とにバックグランドの変動が生じても、明色の領域と暗色の領域との境界を精度よく判定できる。
 また、上記実施形態では、ユーザ装置UD2の複合コード解析手段CA2および管理サーバMS1の複合コード解析手段CAMの少なくとも一方により、複合コードを解析し、第2のコードから数値を復元できる。したがって、ユーザ装置UD1のように、解析手段CA2を設けなくても、画像入力手段IIN1と通信手段CMU1を有するユーザ装置UD1は、管理サーバMS1との通信により簡易、軽負荷で、複合コードによるサービスをユーザに提供できる。
 [実施形態2]
 上記実施形態1では、第2のコードの読み取り順は、第1のコードのセルの読み取り順とした。ただし、第2のコードが設定されたセルの読み取り順を第1のコードのセルの読み取り順を異なるものとしてもよい。例えば、図32の情報システムにおいて、複合コードを生成する複合コード生成手段CGM、CG2が2値符号化されたビット列をセル毎のデータに分割する処理(図34のS14)において、第2のコードが設定されたセルの読み取り順を第1のコードとは異なる順とするとともに、その読み取る順を保存するようにしてもよい。例えば、読み取り順は、セルの読み取り順の番号SEQ(k)とセルの中心座標(X,Y)とを対応づけて管理できる。複合コードを生成する管理サーバMS1の複合コード生成手段CGM、あるいはコンテンツサーバCS2の複合コード生成手段CG2は、第2のコードが設定されたセルの読み取り順の番号SEQ(k)とセルの中心座標(X,Y)とを対応づけて保存し、複合コードを読み取るユーザ装置UD1、UD2に引き渡せばよい。
 また、例えば、すべてのセルに基準となる通し番号ID(n)を所定の基準で付与し、すべてのセルについて付与される識別情報である通し番号ID(n)と、第2のコードが設定されたセルの読み取り順の番号SEQ(k)との関係として管理できる。複合コードを生成する管理サーバMS1の複合コード生成手段CGM、あるいはコンテンツサーバCS2の複合コード生成手段CGは、セルの読み取り順の番号SEQ(k)と各セルについての通し番号ID(n)とを対応づけて保存し、複合コードを読み取るユーザ装置UD1、UD2に引き渡せばよい。この場合、各セルについての通し番号ID(n)と各セルの中心座標(X,Y)との関係は、事前に規則で決められているものとする。
 以下、セルの読み取り順の番号SEQ(k)を特定セルインデックスともいう。また、第2のコードが設定されたセルの読み取り順の番号SEQ(k)とセルの中心座標(X,Y)との関係、あるいは、すべてのセルについて付与される識別情報である通し番号ID(n)と、第2のコードが設定されたセルの読み取り順の番号SEQ(k)との関係をセル読み取り順序情報という。
 図37に、実施形態2に係る情報システムの構成を例示する。図のように、この情報システムは、管理サーバMS3と、コンテンツサーバCS3と、ユーザ装置UD3とがネットネットワークN1により接続される。管理サーバMS3は、複合コード生成手段CGMと、特定セルインデックス設定手段CIGMを有する。複合コード生成手段CGMは、複合コードを生成するときに、特定セルインデックス設定手段CIGMにより、セル読み取り順序情報を生成し、セル読み取り順序情報ファイルCIMに保存する。
 また、コンテンツサーバCS3は、特定セルインデックス設定手段CIGSを有する。コンテンツサーバCS3は、複合コードを生成するときに、特定セルインデックス設定手段CIGSにより、セル読み取り順序情報を生成し、セル読み取り順序情報ファイルCISに保存する。なお、図37では、省略しているが、本情報システムは、実施形態1のコンテンツサーバCS1を有してもよい。コンテンツサーバCS1は、自身で複合コードを生成する代わりに、複合コードの生成を管理サーバMS3に依頼する。したがって、生成された複合コードに対応するセル読み取り順序情報は、管理サーバMS3のセル読み取り順序情報ファイルCIMに保存される。なお、通信手段CMS3、複合コード出力手段COUT3は実施形態1の通信手段CMS2、複合コード出力手段COUT2と同様であるので、その説明を省略する。
 ユーザ装置UD3は、例えば、セル順序読み取り情報を管理サーバMS3またはコンテンツサーバCS3から、ネットワークN1を介して取得し、保持する。ユーザ装置UD3の複合コード解析手段CA3は、セル順序読み取り情報にしたがって、各セルに設定されたドットパターンによる数値を統合することで、第2のコードからデジタルデータを復元する。なお、画像入力手段IIN3、通信手段CMU3は、実施形態1の画像入力手段IIN1、IIN2、通信手段CMU1等と同様であるので、その説明を省略する。
 図38は、コンテンツサーバCS3または管理サーバMS3による複合コード生成処理Bを例示するフローチャートである。この処理では、コンテンツサーバCS3は、S14Aの処理において、セル読み取り順序情報を保存する点が図32と相違する。他の手順は、実施形態1と同様であるので、その説明を省略する。S12からS15の処理を実行するコンテンツサーバCS3は、第2のコードを生成する第2の生成手段を有するといえる。
 図39は、ユーザ装置UDによる複合コード読取処理Bを例示するフローチャートである。この処理では、ユーザ装置UD3は、S25AおよびS26Aの処理を実行する点で、図35と相違する。すなわち、ユーザ装置UD3は、セル読み取り順序情報をセル読み取り順序情報ファイルCIUから参照する(S25A)。そして、ユーザ装置UD3は、セル読み取り順序情報にしたがって各セル内のドットパターンで指定される数値を統合し、第2のコードによるデジタルデータを復元する(S26A)。なお、ユーザ装置UD3は、セル読み取り順序情報をセル読み取り順序情報ファイルCIUから参照する代わりに、コンテンツサーバCS3または管理サーバMS3にセル読み取り順序情報を生成するように依頼し、生成されたセル読み取り順序情報を参照するようにしてもよい。S22、S23、S25AおよびS26Aの処理を実行するユーザ装置UDは、第2の取得手段を有するといえる。また、S25Aの処理を実行するユーザ装置UD3は、特定セルを順序づける特定セルインデックスを生成するサーバまたは特定セルインデックスを保存するサーバから、特定セルインデックスを取得する手段を有すると言える。また、コンテンツサーバCS3または管理サーバMS3は、特定セルを順序づける特定セルインデックスを生成するサーバまたは特定セルインデックスを保存するサーバの一例と言うことができる
 なお、ユーザ装置UD3は、S26Aによる処理を実行するときに、セル読み取り順序情報を管理サーバMS3から取得してもよいし、図39の複合コード読取処理を実行する前に、管理サーバMS3から予めセル読み取り順序情報を取得し、セル読み取り順序情報ファイルCIUに保存しておいてもよい。
 以上述べたように、実施形態2では、複合コードを生成するコンテンツサーバCS3または管理サーバMS3により、特定セルインデックスであるセルの読み取り順の番号SEQ(k)とセルの中心座標(X,Y)との関係、あるいは、セルの読み取り順の番号SEQ(k)と各セルについての通し番号ID(n)との関係がセル読み取り順序情報ファイルCIS、CIM等に保存される。セル読み取り順序情報ファイルCIS、CIM等に保存されたセル読み取り順序情報は、ユーザ装置UD3に引き渡され、複合コードの復号時に参照され、ドットパターンの形式で設定されたセルごとの数値が統合され、第2のコードが元のデジタルデータに復元される。したがって、実施形態2の情報システムによれば、第1のコード、例えば、QRコードの読み取り順に依存しない読み取り順序で、第2のコードを形成するドットパターンを各セルに設定でき、復元できる。
 このような読み取り順は、事前に規則で定めておいてもよいし、例えば、図1に例示したフォーマット情報あるいは第1のコードのデータ(本文)の中に、読み取り順序の規則を指定する情報を埋め込んでおいてもよい。このような構成とすることで、様々な態様で第2のコードを設定できる。
 [実施形態3]
 上記実施形態1、2では、第1のコードのセルの読み取りと並行し、各セル内のドットパターンの有無を判定し、第2のコードを復号した。しかし、一旦第1のコードの復号のみを先に実行し、次に2回目に、各セルを走査し、第2のコードからデジタルデータを復元するようにしてもよい。
 また、上記実施形態2では、第1のコードのセルの読み取り順と第2のコードのセル読み取り順が異なる場合の処理を例示した。しかし、例えば、第1のコードがQRコードである場合に、仮に、図1に例示したデータ及び誤り訂正符号の読み取り順と、第2のコードがドットパターンで符号化されたセルの読み取り順が同一の場合でも、フォーマット領域、ファインダパターン、タイミングパターン、または、図13に例示したクワイエットゾーン等に第2のコードのドットパターン(または線分のパターン等)を設定する場合には、第2のコードの読み取り順は第1のコードのセルの読み取り順と異なるものとなる。そこで、第2のコードを形成するドットパターン(または線分のパターン等)が設定されるセルによっては、第1のコードのセルの読み取りと並行し、各セル内のドットパターンの有無を判定できない場合もある。
 そこで、実施形態3では、複合コードの解析において、第1のコードの解析のためのセルの走査が終了した後、再び複合コードの画像中のセルを上記規則にしたがって走査する処理を例示する。複合コードの解析での第2のコードが埋め込まれたセルの読み取り順以外の実施形態3の他の構成および処理は上記実施形態1と同様である。
 実施形態3の構成要素のうち、実施形態1および実施形態2と同一の構成要素については、実施形態1および実施形態2の構成要素が実施形態3に適用されるものとしてその説明を省略する。また、必要に応じて、実施形態1および実施形態2の構成要素を引用する。
 なお、上記実施形態2では、第2のコードの読み取り順を第1のコードのセルの読み取り順を異なるものとし、セルの読み取り順の番号SEQ(k)とセルの中心座標(X,Y)との関係、あるいは、セルの読み取り順の番号SEQ(k)と各セルについて通し番号ID(n)との関係がセル読み取り順序情報ファイルCIS、CIM等に保存され、復号時に参照できるようにした。本実施形態では、実施形態2と同様、セル読み取り順序情報が読み取り側のユーザ装置UD3等から参照できるようにしてもよいし、セル読み取り順序情報を読み取り側のユーザ装置UD3等に引き渡さないようにしてもよい。
 例えば、図32の情報システムにおいて、複合コードを生成するとき、2値符号化されたビット列をセル毎のデータに分割する処理(図32のS14)において分割されたビット列を割り当てるセルの順序を特定の規則にしたがって決定するものとする。そして、複合コードを解析するときに、同一の規則にしたがって、第2のコードを形成するドットパターンが設定されたセル数値を統合すればよい。したがって、第2のコードの読み取り順が第1のコードのセルの読み取り順と異なるものとしても、必ずしもセル読み取り順序情報が必要な訳ではない。
 図40は、実施形態3における複合コードの読み取り処理を例示するフローチャートである。図40の処理は、実施形態2の図39と比較して、S20CおよびS21Cが相違する。すなわち、例えば、ユーザ装置UD3は、まず、第1のコードのすべてのセルの解析を実行する(S20C)。以下、図40の処理は、ユーザ装置UD3が実行するものとして説明するが、ユーザ装置UD3から複合コードを引き渡された管理サーバMS3が以下の処理を実行してもよい。
 ユーザ装置UD3等(以下、単にユーザ装置UD)は、画像入力インターフェース17を介して、スキャナあるいはカメラ等から入力される複合コードの画像を入力し、フォーマット、および第1のコードのセルの配置を認識する。例えば、ユーザ装置UDは、ファインダパターンにより、QRコードの向きを認識し、アライメントパターンにより画像の歪みを補正する。また、ユーザ装置UDは、タイミングパターンにより、セルの配置間隔を認識し、QRコードのデータおよび誤り訂正符号の配置位置を特定する。そして、ユーザ装置は、例えば、一般的なQRコードの読み取り順序にしたがって、すべてのセルの明暗を判定する。
 次に、ユーザ装置UDは、再度複合コードの全セルを所定の順に走査する。走査順は、例えば、右下のセルから、第1列を上方向に走査し、次に、第2列を下方向に走査し、以降同様に、奇数列を上方向に走査し、偶数列を下方向に走査すればよい。ただし、実施形態3において走査順に限定がある訳ではなく、例えば、左上セルから、奇数行を右方向に、偶数行を左方向に、行毎に走査してもよい。この全セルにおいては、ファインダパターン、アライメントパターン、タイミングパターン、フォーマット、データおよび誤り訂正符号のすべてを走査する。そして、ユーザ装置UDは、次のセルの画像を取得する(S21C)。この処理は、処理の対象に、ファインダパターン、アライメントパターン、タイミングパターン、フォーマット等が含まれる点を除外して、実施形態1、2と同様である。
 次に、ユーザ装置UDは、処理中のセル内に第2のコードが定義されているか否かを判定する(S22)。この処理は、判定の対象に、ファインダパターン、アライメントパターン、タイミングパターン、フォーマット等が含まれる点を除外して、実施形態1、2と同様である。そして、セル内に第2のコードが定義されている場合には、セル内の第2のコードを解析する(S23)。この処理も、解析の対象に、ファインダパターン、アライメントパターン、タイミングパターン、フォーマット等が含まれる点を除外して、実施形態1、2と同様である。
 そして、ユーザ装置UDは、次のセルが未処理で残っているか否かを判定する(S24)。次のセルが未処理の場合、ユーザ装置UDは、処理をS21に戻す。この処理も、判定の対象に、ファインダパターン、アライメントパターン、タイミングパターン、フォーマット等が含まれる点を除外して、実施形態1、2と同様である。
 そして、すべてのセルの処理が完了し、次のセルがない場合、ユーザ装置UDは、第1のコードの明暗判定で得られたビット列から、第1のコードをキャラクタごとに統合した情報を生成する(S25)。この処理は、実施形態1、2と同様である。ただし、S25の処理は、S20Cの処理の中で実行してもよい。
 そして、ユーザ装置UDは、セル読み取り順序情報をセル読み取り順序情報ファイルCIUから参照する(S25A)。そして、ユーザ装置UDは、セル読み取り順序情報にしたがって各セル内のドットパターンで指定される数値を統合し、第2のコードによるデジタルデータを復元する(S26A)。S25AおよびS26Aの処理は、処理の対象に、ファインダパターン、アライメントパターン、タイミングパターン、フォーマット等が含まれる点を除外して、実施形態1、2と同様である。以降の処理は、実施形態1、2と同様であるので、その説明を省略する。S22、S23、S25AおよびS26Aの処理を実行するユーザ装置UDは、第2の取得手段を有するといえる。
 なお、上述のように、2値符号化されたビット列をセル毎のデータに分割する処理(図34のS14)において分割されたビット列を割り当てるセルの順序を特定の規則にしたがって決定するものとする場合には、S25Aの処理は不要である。すなわち、ユーザ装置UDは、当該規則にしたがって、各セル内のドットパターンで指定される数値を統合し、第2のコードによるデジタルデータを復元すればよい。
 以上述べたように、実施形態3によれば、ユーザ装置UD3、管理サーバMS3等は、第1のコード、例えば、QRコードのセル読み取り順と異なる読み取り順序で、第2のコードが設定されたセルから第2のコードを形成するドットパターンを読み取り、複合コードを復号できる。したがって、ファインダパターン、アライメントパターン、タイミングパターン、フォーマット等にドットパターンが形成される場合も、復号が可能となる。
 [実施形態4]
 上記実施形態1~実施形態3では、第1のコードのセルの配置に対して、第2のコードが静的に配置され、時間変化しない複合コードが例示された。実施形態4では、第1のコードのセルの配置に対して、第2のコードが時間変化する複合コードが例示される。このような複合コードは、例えば、情報機器のディスプレイ上に表示可能である。例えば、情報機器がフレームごとに固定の第1のコードに、異なる第2のコードを組み合わせてディスプレイ上に表示すればよい。第2のコードは、1フレームごとに異なるものが出力されてもいいし、複数フレーム連続して同一のものが出力されてもよい。第2のコードは、図12から図29に例示したどれであってもよい。
 また、同一の第2のコードで、表示される表示期間を変更することで、いわば、パルス幅変調と同様の手順で、情報を定義してもよい。例えば、図12に例示した仮想点からの距離と方向で情報を定義するドットパターンでは、定義される情報量は、3ビットである。しかし、3ビット固定のドットパターンを時間軸方向で、フレームごとにONとOFFさせることで、60ビット/秒程度の情報を1つのセルで送信できる。この場合に、例えば、第1のコード、例えば、QRコードの所定の領域(図1のファインダパターン、アライメントパターン等)も、ONおよびOFFすることで、フレームを同期させるための同期パターンを形成してもよい。読み取り装置は、第1のコードによるフレーム同期にしたがって、第2のコードであるドットパターンをフレームごとに取得すればよい。
 さらに、1つの第2のコードが表示される区間が1~数フレームとすることで、人の目によって視認されにくくすることができる。したがって、人の目には認識されにくい状態で、情報機器のディスプレイから他の情報機器のカメラ、スキャナ等の画像形成装置によって複合コードを取得することができる。
 なお、第2のコードの時間変化において、明暗のパターンが複数フレーム以上継続する場合には、画像入力手段(実施形態1の画像入力手段IIN1、IIN2、実施形態3の画像入力手段IIN3等)は複数フレーム分のデータを蓄積することで、同期パターンなしに第2のコードを入力可能である。また、第2のコード自体が、例えば、信号の開始を示す明暗パターンのシーケンスと、信号の終了を示す明暗パターンのシーケンスを有することで、QRコードの所定の領域に同期パターンを形成しなくてもよい。
 ここで、複合コードが情報機器のディスプレイに表示される場合について説明する。
 第1のコードの一例であるQRコードは視認できることが前提であるため、ディスプレイで任意の時間継続表示する。一方、ディスプレイで映像が表示されている30フレーム/秒では10~30フレームに付き1~2フレーム程度、60フレーム/秒では20~60フレームに付き1~4フレーム前後だけ第2のコードを表示することにより、視聴者には第2のコードを視認しにくくすることができる。さらに、視認しにくくしたい場合は、ドットの画素色がセルで使用されている識別可能な2以上の色のセルの画素色に対して認識できる範囲で、ドットが視認しにくい画素色を使用すればよい。
 [その他の変形例]
 上記実施形態1から4では、明色の領域と暗色と領域とによって、第1のコードおよび第2のコードを定義した。そして、生成装置であるコンテンツサーバCS1、CS2、CS32等が複合コードを出力し、読み取り装置であるユーザ装置UD1、UD2、UD3等が複合コードからデジタルデータを復元し、所定の処理を実行した。ここで、暗色の領域は、例えば、黒色の領域であり、明色の領域は、白色の領域である。しかし、複合コードは、明色の領域と暗色によって形成されるものに限定される訳ではない。例えば、R(赤)、G(緑)、B(青)、C(シアン)、M(マゼンダ)、Y(黄)、B(黒)、W(白)のいずれか2色を、第1のコードおよび第2のコードのセルの色に使用してもよい。また、カラーコード情報として、R(赤)、G(緑)、B(青)、C(シアン)、M(マゼンダ)、Y(黄)、B(黒)、W(白)いずれかをセルの色として選択できるようにし、第1のコードおよび第2のコードを定義してもよい。その際、第1のコードを形成するセルと第2のコードを形成するマークの識別は、選択できる色が異なる組み合わせにより可能となる。また、第2のコードに形成するマークがあるか否かで、第2のコードの存在を認識できる。マークが配置されていない第1のコードのセルの色と第2のコードのマークは同色を選択するケースがあってもよい。当然、当該マークは、第2のコードのセルの色と識別できる範囲の色を使用しなければならない。さらに、当該マークは第2のコードのセルの色と識別できる範囲で、当該マークの色をカラーコード情報とすることもできる。複合コードの第1のコードがQRコードである場合は、第1のコードと第2のコードのセルの色は、従来のQRコードリーダーが第1のコードを読み取れる色に限定し、第2のコードのマークの色を、R(赤)、G(緑)、B(青)、C(シアン)、M(マゼンダ)、Y(黄)、B(黒)、W(白)の8色としてもよい。マーク配置位置に取得できる色を8種類とすることにより、1つのマーク配置位置で3bitを定義でき、第2のコードの情報量を3倍に増大できる。なお、印刷媒体の色と第1または第2のコードのマークが形成されたセルのいずれかの色は同一であってもよい。さらに、マークが形成されていない第1のコードのセルの色は、前述のいずれかのマークの色と同一であってもよい。その場合、当該マークの色情報は、4色であれば2bitで00、8色であれば3bitで000としてもよい。当然であるが、複合QRコードリーダー性能により色数を増やし、カラーコード情報を増加させることができることは言うまでもない。例えば、画像識別における符号化変調技術を用いれば、その倍程度の情報量が実現可能となり、カラーマークを使用することにより、6倍の情報量を定義できることになる。
 また、上記実施形態1から4では、第1のコードとしてQRコードが例示された。しかし、実施形態1から4において、第1のコードがQRコードに限定される訳ではない。例えば、第1のコードとして、カラーコード、DataMatrix、PDF417を含む2次元コードを利用できる。
 [実施形態5]
 上記実施形態1~3では、第1のコードのセルの配置に対して、第2のコードが組合せられた複合コードが例示された。また、実施形態4では、第1のコードのセルの配置に対して、第2のコードが時間変化する時系列複合コードが例示された。本実施形態では、第2のコードの変形例および第2のコードの読み取り方法の変形を例示する。なお、実施形態5で説明される複合コードが実施形態1~4に適用できることはいうまでもない。また、実施形態5で説明される複合コードの読み取り方法が実施形態1~4に適用できることはいうまでもない。
 (複合QRコードの印刷特性と読み取り方法)
 以下、マークとしてドットを使用した実施例を示す。もちろん、マークは略円形、矩形、十字、多角形等、どのような形状であってもよい。なお、以下で示したドットを他のマークに置き換えて使用してもよいことは言うまでもない。
 図41に、実施形態5における紙面等の媒体に印刷された暗色セルとピクセルの関係を例示する。図42は、4×4pixelの暗色セルに明色のドットを形成した例である。図43は、4×4pixelの明色セルに暗色のドットを形成した例である。印刷されるQRコードの暗色セルの大きさは、通常、0.17mm~0.5mmであり、図41のように、1個のセルを4×4pixel以上で印刷することが推奨されている。なお、1ピクセルの形状は矩形または円形いずれでもよい。最低の0.17mmは、一般的な印刷解像度の600dpiで印刷した場合、4×25.4mm/600≒0.17mmとなる。一方、ドットコードでのドットの大きさは、データ上では600dpiのピクセルサイズ、つまり25.4mm/600≒0.042mmである。なお、ドットゲインやインクの膨張、浸透等により膨らんで、ドットの大きさが0.05mm程度になる場合が多々ある。なお、逆にインクの定着が悪く、ドットの大きさが0.04mm程度(しかし、0.03mmを下回ることはない)以下になる場合もある。暗色セルにドットを形成する場合、周辺の暗色印刷部分の膨張により逆に明色ドットは0.03mm程度になる場合がある。ここで、最小セルサイズ(例えば、0.17mm)を最小ピクセル数(4×4)で印刷する暗色セルにドットコードを形成すると、図42のように、暗色セルの中央の4個のピクセルのいずれかを印刷することにより、4通りのドットパターンを形成できる。つまり、1個のセルに対して2bitのドットコードを定義できる。中央の4個のみを対象にしたのは、ドットと同色のセルと隣り合う場合、セルの輪郭の精度が悪いと、ドットを認識しづらくなるため、セルの輪郭の領域に接続するドットの配置を排除するのが望ましいからである。
 ドットコードの読取りには複数の方法がある。ドットコードの読取りは、複合コードが撮像された画像がフレームバッファに記憶され、フレームバッファの座標系でドットを認識しその中心位置(座標値)を求めるか、ドット配置候補位置にドットが配置されているかを認識して、ドットの配置パターンにより定義された情報を取得することで行われる。代表的な方法は、下記の2通りである。
 (方法1)
 方法1は、ドットの中心点を認識する方法である。すなわち、方法1は、撮像した画像からドットを抽出し、ドットの中心座標値を求めてドットの配置パターンを求める。この場合、ドット周辺には、撮像した際にドットを形成する画素の明暗から、明暗の変化率等を閾値としてドットを検出するため、ドットは他のドットや、同色のセルと接触した状態では認識することが困難である。従って、近接するドットの端部から、両ドットを認識できる所定距離を離してドットを配置することが望ましい。
 ところで、撮像した画像では、光が側方からQRコードを照らしたり、影や陰影が生じたりして、ドットを抽出するには前述の明暗の変化率を閾値とするのが望ましいが、明暗の変化率を求めるには、隣り合うドットの端部から端部まで少なくとも4ピクセル以上が必要であり、一定の解像度を有するカメラで撮影が必要になる。一方、QRコードの同一色のセルの明暗はセルの位置によって大きく異なる場合があるが、各セル内での変化は殆どない。そこで、明色セルでは、当該セルを撮像したピクセルの明るい方から数個のピクセルの明度の平均値BLAを求め、同時に、ピクセルの暗い方から数個のピクセルの明度の平均値BDAを求める。ΔB=BLA-BDAが所定範囲内に入っていれば、当該セルにはドットが存在しないことが分かり、所定範囲を超えていればドットが存在することになる。その場合のドットを判定する閾値は、α×BDA以下、またはBDA+β×ΔB以下で計算される。暗色セルでは、同様な処理を行い、ドットを判定する閾値は、α×BLA以上、またはBDA+β×ΔB以上で計算される。なお、α、βは、BLA、BDA、ΔBやカメラの性能や撮像画像の特性等によって定まる。
 (方法2)
 方法2は、画像から得られたドットと、認識対象のドットが形成される所定領域(ドットの配置候補領域)または所定位置(ドットの配置候補位置)との重複部分を求める方法である。方法2は、簡潔には、所定の領域または所定位置にドットが存在するかを判定する方法ということができる。方法2の場合、ドットの中心座標値を求める必要がない。ドットが存在するか否かは、ドットの配置候補領域または配置候補位置を正確に認識できることが重要である。印刷精度がよく、複合QRコード読取り装置の解像度が高ければ、複合コードの読み取り装置は、セルの中心座標値と当該セルの領域が正確に認識できる。そのような場合は、バウンディングボックスと呼ばれる予めドットの候補配置位置(XnS1,YnS1)を中心とした所定の領域にドットの中心位置が含まれるか否か、または当該領域に一定の面積を有するドットの所定の範囲が含まれるか否かで、ドットの配置位置が判定される。あるいは、ドットの候補配置位置(XnS1,YnS1)に、一定の面積を有するドットの一部が重畳しているか否かで認識してもよい。なお、複合QRコードが形成された媒体が平面を形成しない場合や、同媒体に対して、読取り装置が斜め方向から撮影した場合は、セルの中心座標値がずれる場合がある。そのような場合は、求まったセルの中心座標値を、所定の方法で正しいセルの中心座標値に補正するのが望ましい。この方法2は、微細なサブセルによってマトリクス状に細分化された拡張セルが第2のコードを形成する複合コードにおいても、従来よりも精度高い認識を可能にする。その際の最大の条件は、各セルの配置位置が、複合コードが撮像された画像がフレームバッファに記憶され、その座標系において正確な座標値で認識できることである。正確な座標値を取得するためには、基準となる基準マークを設けて、その基準マークはサブセルと接続させないで独立して設け、当該基準マークを抽出し中心座標値を取得することである。その結果、基準マークとサブセルの配置位置の関係によって、サブセルの配置位置を認識できる。
 図44は、バウンディングボックスによるドットの位置の判定方法を例示する図である。図44のように、読み取り装置は、セル中心位置から、セルのコーナーに向かって直線を引き、当該直線と重複するドットのピクセルを抽出する。なお、セルの中心位置(座標値)は、大概、第1のコードを読み取ることによって取得することができるが、フレームバッファの座標系とは異なる座標系の座標値で取得した場合は、撮像画像が記憶されたフレームバッファの座標系の座標値に変換する必要が有る。そして、読み取り装置は、ドットと重複した直線上の領域(直線と重複したピクセルの列からなる領域)の中心が、予めドットの候補配置位置(XnS1,YnS1)を中心とした所定の領域以内(バウンディングボックス)に当該座標値が含まれているかで判定すればよい。バウンディングボックスは、ドットのサイズと同程度のセルサイズの25%前後(例えば、20%~30%程度)の直径を有する円が望ましいが、矩形やその他の形状でもでもよいし、そのサイズも誤認率を想定した誤り訂正のレベルや印刷精度、撮像解像度で適宜定めてよい。なお、ドットが欠けているような場合は重複領域が途中で欠ける場合やインクの飛びもあり、それらを判定することが望ましい。例えば、直線と重複したピクセルの列からなる領域が複数領域に分離する場合が想定される。そのような場合には、読み取り装置は、最大領域をドットの領域とみなせばよい。また、分離した複数領域間の距離が所定値以内の場合に、読み取り装置は、分離した複数領域を1つの連続領域として統合してもよい。
 ドット座標値は、直線とドットの重複位置始点(XnS1-1,YnS1-1)および終点の座標値(XnS1-2,YnS1-2)から、式XnS1=(XnS1-2+XnS1-1)/2,YnS1=(YnS1-2+YnS1-1)/2によって、(X,Y)として求められる。この結果、図44の例で、セル内の2本の対角線を用いてドットを検出する場合、1つの対角線に4個のドットの配置位置を設定し認識できるので、1個のセルに対して、2つの対角線で合計8個のドットの配置を設定し、8通り、すなわち3bitを定義することができる。
 この8通りは、8個のドットの配置候補位置のいずれか1個だけドットが配置された場合であり、なお、ドットであるか否かの判定用の閾値は、前述の明暗の変化率等や、α×BDAまたはα×BLAやBDA+β×ΔBを使用してもよい。セルの配置位置が一定の精度で認識できれば、バウンディングボックスを当該セルのサイズより若干下回る大きさに設定し、そのバウンディングボックス内でドットを抽出すれば、ドットが接続し隣接する同色のセルの影響を受けない。
 QRコードのデータ領域の暗色、明色のセルにドットコードを形成すると、ドットコードの誤り訂正にQRコードと同程度の領域を使用したとしても、図44で示したドット認識の方法を用いて、各セル当たり3bitを定義できるドットコードではQRコードの3倍のデータを複合QRコードに格納できる。仮に、データ領域の明色セルだけにドットコードを形成しても1.5倍程度の情報量を格納できる。なお、ファインダパターン(切り出しシンボル)、アライメントパターン、クワイエットゾーン、タイミングパターン、フォーマット情報を形成するセルにもドットコードを形成でき、QRコードの2倍程度の情報量を格納できる。さらに、データ領域以外の明暗色のセル全てにドットコードを形成すると、当該QRコードの4倍以上の情報を格納できる。なお、これらのドットの配置の違いは、現行の解像度の低いスマートフォンのカメラでも、全く問題なく認識できる。この実施形態では、印刷できる領域が4×4であると仮定しているが、セルの大きさを大きくすれば、ドットの配置パターンはさらに増加させることができる。但し、その場合、高解像度のカメラで撮影・解析することが望ましい。専用の撮像解像度の高い複合QRコードを使用すれば、容易に取得できる情報量を増大できる。
 図45は、さらに、ドットコードの情報量を増大させるために、600dpiで1個のセルを5×5pixelで印刷し、セルサイズは5×25.4mm/600≒0.21mmとした実施例である。網で示した4か所は、ドットの形成位置を示している。この4か所にドットを形成するか、否かによって、1個のセルに4bitを定義できる。
 図45は、600dpiで1個のセルを、セルを5×5pixelで印刷した例であり、図46は、7×7pixelで印刷した例である。セルが7×7pixelで印刷されるとセルサイズは7×25.4mm/600≒0.30mmとなる。網で示した部分(5×5pixelの4箇所、および7×7pixelの9箇所)は、ドットの形成位置を示している。
 セルを7×7pixelで印刷する場合、中央の1ピクセルには、常にドットを形成し、当該セルにはドットコードが形成されていることの指標に使用してもよい。その場合は、1個のセルに8bitが定義される。なお、いずれか1個のピクセルが形成される場合は、8箇所のドットの配置の仕方は、8通り(中央にドットを形成する場合も含めば9通り)となり、1個のセルで3bitが定義される。このドットコードの認識方法としては、読み取り装置は、セルの中心位置を基に、ドットが配置される領域に対してバウンディングボックスを設定して、当該バウンディングボックス内にドットが配置されているかどうかでドットの配置を認識すればよい。バウンディングボックスの大きさは、図45ではドットのサイズと同程度のセルのサイズの20%前後(15~30%程度)、図46ではセルのサイズの14%前後(10%~20%程度)の直径または辺を有する円または矩形であるのが望ましい。ドットの具体的な認識方法としては、読み取り装置は、バウンディングボックス内で認識された暗色または明色の割合が所定の比率(例えば、セルの中心位置のずれや印刷の精度を考慮し、50%)を超えた場合に、ドットが配置されていることを判定してもよい。また、読み取り装置は、ドットの中心座標値を求めて、セル内に本来配置されるドットの座標値に最も近い位置のバウンディングボックス内のドットで判定してもよい。なお、ドットであるか否かの判定用の閾値は、前述の明暗の変化率等や、α×BDAまたはα×BLAやBDA+β×ΔBを使用してもよい。
 なお、暗色セルに対しても明色ドットにより同様なドットコードが定義できることは言うまでもない。本実施形態では、図45の5×5pixelのセルで4個のピクセルの全てにドットが配置されたとしても、ドットの専有面積は4/(5×5)=16%にしかならず、ドットのサイズが膨らんでも、1.1倍程度(18%増程度)である。また、図46の7×7pixelのセルで9個全てにドットが配置されたとしても、ドットの専有面積は9/(7×7)=18%にしかならず、ドットのサイズが膨らんでも、1.1倍程度(20%程度)である。したがって、ドットコードの存在がQRコードを構成するセルの認識(他色の混入が1/3以下であれば適正に認識できる)に影響を与えることはない。さらに、ドットコードの情報量を増大するには、セルを構成するピクセル数を増加させてドットを配置する位置を増やし、印刷解像度を上げてドットを配置する位置を増やしてもよい。その場合、複合コードの読み取り装置の撮像解像度が十分に高ければ、ドットサイズは小さくしてもよい。その結果、ドットの配置位置を多く設定でき、ドットコードの情報量を増大させることができる。なお、ファインダパターン(切り出しシンボル)、アライメントパターン、クワイエットゾーン、タイミングパターン、フォーマット情報を形成するセルにもドットコードを形成でき、さらに情報量を増大できる。
 以上のように、ドットコードをQRコードのセルに形成した複合QRコードは従来と同じ面積で埋め込む情報量を増加することができ、かつ、本来のQRコードの認識への影響を抑制できる技術である。従来技術は、1個のセルを分割して情報量を増加させるものであり、同色で分割セルが隣合わせになった際に認識が困難になり、印刷および撮像が超高解像度で実施されることが前提条件であり汎用性に乏しい。この従来技術に対して、本技術は、低解像度のカメラであっても、周辺が反対色(暗色と明色)であるドットの認識は容易であり、ドットの占める面積が少なくQRコードの認識も確保しつつ、従来技術に対してより多くの情報を付加できるのが大きな特徴である。以上から、一般的に使用されているQRコードを形成する1個のセルで1bitの情報しか定義できないが、複合QRコードでは、1個の明色セルおよび/または暗色セルに形成されるドットコードにより、1個のセルに対して、少なくとも2bit~8bit程度を定義できる。さらに、後述のカラーコードを使用することにより、現行のスマートフォン等の携帯端末に搭載されたカメラでQRコードの6~10倍以上の情報を複合QRコード(複合QRコード内に記録されたドットコード)から読み取ることができる。
 ドットコードに記録される情報量の大幅な増加により、テキスト情報だけでなく、音声情報や画像情報を格納できる。しかも、複合QRコードに記録された情報は、電話回線やインターネット、無線等の通信を使用しないで、カメラで撮影し、専用のアプリで読み取るだけで取得することができる。これにより、情報の送信中に第三者にハッキングされることを回避させることができ、極めてセキュリティ性の高い記録媒体となる。したがって、複合QRコードによる情報の授受は、従来の通信と比較して個人情報や秘匿情報等の保護に有効である。さらに、複合QRコードによる情報授受では、情報提供者自身のメールアドレスやSNSの個人情報を渡さずに、情報を渡したい相手に提供できる。
 (複合QRコード中のドットコードの読み取り方法)
 QRコード読取りで最も多く使用されているスマートフォン等、携帯端末のカメラで、最も低い解像度はVGA(640×480)であるが、現在、極めて僅かである。携帯端末のカメラは、年々高解像度になることから、VGAによる問題は、無視してよい。複合QRコードを読み取る際に、撮像した画像からより確実にドットコードであることを認識するには、1個のドットを2×2ピクセル以上で撮像するのが望ましい。そうすれば、撮像されたドットの左右・上下の1ピクセルのずれに対応できる。現在、普及しているスマートフォン等のカメラの解像度は、年々高くなり、少なくとも1920×1080~2048×1536(300万画素)を超えている。従って、本実施形態では、比較的低解像度の1920×1080ピクセルのスマートフォンを想定し、さらに周辺ののりしろ20%程度設けられると過程する。この仮定では、撮影範囲は、864×864ピクセルであるので、本実施形態の複合QRコードを十分な精度で読み取ることが可能である。図42と図43の複合QRコードでは、1個のセルを8ピクセルで撮像すると、読み取れるセル数は、864/8=108となり、バージョン22、105×105セル、(誤り訂正レベルMで漢字488文字、0.779KB、ドットコードには最大1.558KBを格納可能)までの読取りが可能であり、ドットコードにQRコードの1.5~2倍程度を格納でき、印刷した場合105×8×25.4/600mm≒35.56までを読み取ることができる。さらに、QRコードの規格では日本語テキストの圧縮はされていない。現在、日本語テキスト圧縮データ技術によりQRコードの3倍の文字数を格納することができる。その結果、488文字×2(ドットコード情報量増加分)×3倍(日本語テキスト圧縮分)=2,928文字を格納できる。図44のような読取り方式を実施すれば、ドットコードには最大2.337KBを格納可能でありQRコードの2~3倍程度を格納できる。さらに、日本語テキスト圧縮データ技術により4,392文字を格納できる。図45の復号QRコードでは、1個のセルを10×10ピクセルで撮像すると864/10=86、バージョン17、85×85セル(誤り訂正レベルMで漢字310文字、0.504KB、ドットコードには最大2.016KBを格納可能)までの読取りが可能であり、ドットコードにQRコードの3~4倍程度を格納でき、印刷した場合85×10×25.4/600mm ≒ 35.98mmを一辺とする矩形領域を読み取ることができる。さらに、日本語テキスト圧縮データ技術により3,720文字を格納できる。図46の復号QRコードでは、1個のセルを14×14ピクセルで撮像すると、864/14≒61となり、バージョン11、61×61セル(誤り訂正レベルMで漢字155文字、0.251KB、ドットコードには最大2.008KBを格納可能)まで読み取りが可能であり、ドットコードにQRコードの6~8倍の情報量を格納でき、印刷した場合61×14×25.4/600mm≒36.15mmを一辺とする矩形領域までを読み取ることができる。さらに、日本語テキスト圧縮データ技術により3,720文字を格納できる。上記では、QRコードの誤り訂正をレベルMとしたが、レベルMは、一般的に多く使用されている誤り訂正レベルであり、当然、誤り訂正レベルLにすれば、更に多くの情報をドットコードに格納できることは言うまでもない。
 現在、普及しているスマートフォンのディスプレイ表示の解像度の市場普及率(2017年度)は、375×667ピクセル34.93%、320×568が18.85%、360×640が13.07%、合計で2/3程度が低解像度のディスプレイである。従って、表示領域に10%ののりしろを設けたとしても、288×288の領域にハイブリッドQRコードを表示する必要がある。1)ドットコードの印刷と同様に、図42~図44の復号QRコードの表示では、1個のセルを4ピクセルで表示することになる。そこで、表示できるセルは、288/4=72となり、バージョン13、69×69セル(誤り訂正レベルMで漢字204文字、0.331KB、ドットコードには最大0.662KBを格納可能)でありQRコードの1.5~2倍程度を格納できる。さらに、日本語テキスト圧縮データ技術により1,224文字を格納できる。図44のような読取り方式を実施すれば、ドットコードには最大0.993KBを格納可能でありQRコードの2~3倍程度を格納できる。さらに、日本語テキスト圧縮データ技術により1,836文字を格納できる。図45の復号QRコードでは、1個のセルを5×5ピクセルで表示すると、288/5≒57となりバージョン10,57×57セル(誤り訂正レベルMで漢字131文字、0.213KB、ドットコードには最大0.852KBを格納可能)でありQRコードの3~4倍程度を格納できる。図46のドットコードでは、1個のセルを7×7ピクセルで表示すると、288/7≒41となりバージョン6、41×41セル(誤り訂正レベルMで漢字65文字、0.106KB、ドットコードには最大0.848KBを格納可能)でありQRコードの6~8倍程度を格納できる。さらに、日本語テキスト圧縮データ技術により1,560文字を格納できる。しかし、これでは日本語テキストや音声、写真等のコンテンツ情報を格納するには十分ではない。しかし、スマートフォンでのハイブリッドQRコードの表示では、後述のドットコードを時間変化させた時系列ドットコードや、ドット表示をカラー化したカラードットコードにより実施できるため、容易に大容量ハイブリッドQRコードを実現できる。
 一方、フルハイビジョンである1080×1920で表示できるスマートフォンが普及していくのは明らかであり、さらにドットコードの情報量を増加させる複合QRコードの表示が可能となる。複合QRコードを表示する領域としては、800×800ピクセルとすると、図41、図42、図43の復号QRコードの表示では、1個のセルを4ピクセルで表示することになる。表示できるセルは、800/4=200となり、バージョン40、177×177セル(誤り訂正レベルMで漢字1,435文字、2.331KB、ドットコードには最大4.662KBを格納可能)つまりQRコードの規格の全てに対応して表示でき、QRコードの1.5~2倍程度を格納できる。日本語テキスト圧縮データ技術により8,610文字を格納できる。なお、図44のような読取り方式を実施すれば、ドットコードには最大6.993KBを格納可能でありQRコードの2~3倍程度を格納できる。さらに、日本語テキスト圧縮データ技術により12,915文字を格納できる。図45の復号QRコードでは、1個のセルを5×5ピクセルで表示すると、800/5=160となりバージョン35、157×157セル(誤り訂正レベルMで漢字1,113文字、1.809KB、ドットコードには最大5.427KBを格納可能)でありQRコードの3~4倍程度を格納できる。さらに、日本語テキスト圧縮データ技術により1,836文字を格納できる。図46のドットコードでは、1個のセルを7×7ピクセルで表示すると、800/7≒114となりバージョン24,113×113セル(誤り訂正レベルMで漢字561文字、0.991KB、ドットコードには最大7.928KBを格納可能)でありQRコードの6~8倍程度を格納できる。さらに、日本語テキスト圧縮データ技術により13,464文字を格納できる。この大容量複合QRコードを読み取る場合には、現行のスマートフォンの撮影解像度では、一部、読み取ることが難しい場合では、高解像度で撮像・解析できる専用複合QRコードリーダーを用いることが望ましい。上記では、QRコードの誤り訂正をレベルMとしたが、レベルMは、一般的に多く使用されている誤り訂正レベルであり、当然、誤り訂正レベルLにすれば、更に多くの情報をドットコードに格納できることは言うまでもない。
 スマートフォンに複合QRコードに表示する場合、異なる複数のドットコードを所定時間ずつ表示することにより多量な情報を生成できる。ハイブリッドQRコードリーダーで点滅するドットコードを読み取る場合、一度だけ、QRコードを読み取るだけで、その後は、ドットコードのみを読み取ることにより高速に処理できる。撮影時の手振れは、タイミングパターンやアライメントパターンの撮像位置の変化を追跡し、その都度、検出したドット位置の補正を行えば、ドットコードを正確に読み取ることができる。実施形態5のようにハイブリッドQRコードをスマートフォンに表示する場合、ドットコードに格納できる1回の情報量は0.85K程度であるが、1~3秒間にドットコードを12回程度、変化させることにより、10KB程度の情報量を取得することができる。これを写真データで再現すると、スマートフォンで表示した場合、十分に高品質な画像として閲覧でき、7万文字を超えるテキスト情報も送信できる。
 QRコードに採用されている誤り訂正符号は、ブロック符号の一種であるリードソロモン符号であるが、ドットコードに採用する誤り訂正符号は、畳み込み符号を用いてもよい。
 畳み込み符号はブロック符号とは異なり、データの区切りがなく、1個所のデータをその周辺にばらまき、その情報を使って統計的な方法で復号することから、誤り訂正の性能が高く、拘束長が小さければ高速に処理できる。
 ただし、誤り訂正符号は、ドットコードの情報容量や誤り率によって、各種誤り訂正符号と、誤りを推定するため二次情報(輝度情報、時系列および周辺の誤り情報等)を用いた、各種復号法(軟判定復号法を含む)を適用することができる。もちろん、ドットコードに適した他の誤り訂正符号を使用してもよいことは言うまでもない。
 これまで大容量QRコードの研究開発が世界中で進められてきたが、いずれも普及に至らなかったのは、セルの中心座標を正確に算出することできず、分割セル等の判定が正確に実施できなかったのが要因と考えられる。さらに、分割セルの情報量を増大させると本来のQRコードの認識率が低下する課題があった。ハイブリッドQRコードは、セル内に面積比の小さなドットコードを形成し、所定間隔毎に基準ドットや基準パターンを配置することにより、それらの課題を解消する画期的な技術である。
 [実施形態6]
 以下、図47から図56を参照して、実施形態5における真贋判定方法、真贋判定のための情報処理装置、および真贋判定のためのコンピュータプログラムについて説明する。上記実施形態1から4では、複合コードの構成、生成方法、読み取り方法、およびこれらの方法を実施する装置およびコンピュータにこれらの方法を実行させるためのプログラムについて説明した。本実施形態では、複合コードを用いてデジタル情報の真贋判定(あるいはデジタル情報改ざん検知)等に適用した方法、方法を実施する装置、コンピュータにこれらの方法を実行させるためのプログラムについて説明する。
 <オフラインによる複合QRコード真贋判定システムの判定手順>
 1)ドットコードに暗号化情報を形成する複合QRコードの生成
 図47に、真贋判定のための複合コード生成処理を例示する。
 (1)図47に例示する複合QRコードの生成では、QRコードのデータ領域に格納された情報を符号化する。ここで、データ領域とは、図1に例示したQRコードのうち、位置検出パターン(ファインダパターン)、アライメントパターン、タイミングパターン、フォーマット情報、及び誤り訂正符号を除く、QRコードで表されるデータ自体をいう。QRコードのデータ領域に格納された情報を符号化する理由は、印刷されたQRコードの印刷時の情報欠落や汚れ、QRコードの撮影状態等で、読み取ったQRコードが、作成時のQRコードとは完全に一致しないことが多々あることである。ディスプレイに表示されたQRコードも、QRコードの撮影状態等で、同様に一致しないことがある。従って、誤り訂正符号を有するQRコードの全部を符号化して、互いの符号化情報を比較しても、意味はない。ここで、符号化とは、ハッシュ関数を用いてデータから不可逆的変換をして符号列を求めることを含む。符号列は平文(署名対象データ)を含み、さらに、ハッシュ関数を用いて符号化された符号化情報はハッシュ値を含んでいる。
 (2)ドットコードには、少なくともデータ(暗号化情報を含む)の他、誤り訂正符号やフォーマット情報(格納されたドットコードのタイプ、バージョン等の仕様)等の必要な情報が所定の仕様によって格納される必要がある。
 (3)複合QRコードは、厳重に暗号化手段を管理する特定の発行機関が発行するのが望ましい。これにより、ユーザの誰もが利用できる環境を構築できる。なお、ユニークな暗号化手段を有し、特定のユーザが使用する場合は、当該ユーザにサービスを提供する発行者であってもよい。例えば、複合QRコードの発行を要請する発行要請者が、発行機関にURLやデータ(QRコードのデータ領域に格納される情報)を送信する。当該発行要請者は、事前に発行機関が承認した法人、行政その他の組織または個人に限るのが望ましい。発行要請者に対して、複合QRコードの発行を実施するかは、逐次所定の方法で認証するのが望ましい。URL等の公開情報には、発行した複合QRコードや発行要請者を公開して、第三者が評価して信頼性を高めてもよい。第三者は、一般ユーザでもよい。
 (4)セキュリティを担保するために、発行機関以外の第三者が複合QRコードを発行できないように、符号化情報を暗号化手段で暗号化する必要がある。符号化情報を暗号化するにはデジタル署名アルゴリズム、つまり署名生成を秘密鍵で生成してもよい。当該デジタル署名アルゴリズムには、SHA256をはじめ各種手法があり、米国商務省配下のNational Institute of Standards and Technology(NIST)で標準化されている。なお、符号化情報を暗号化手段で暗号化した暗号化情報は、デジタル署名であることを含む。
 (5)複合QRコード発行要請者から受領したデータ領域に格納された情報(URLに限らない)からQRコードを生成し、暗号化情報は、QRコードで定義される複数のセルから形成されるドットコードのデータ領域に格納される。当該データ領域は物理的に規定されなくても、論理的に規定されてもよい。なお、暗号化情報はQRコードに格納してもよい。
 (6)完成した複合QRコードは、発行要請者に送信され、発行要請者は複合QRコードを媒体に形成(印刷、刻印、ディスプレイ等への表示により複合QRコードを認識できるあらゆる方法を含む)して第三者に提供する。
 (7)複合QRコードは、第1のコードと、第2のコードのデータ領域に格納されるデータに対して、1個の電子署名(デジタル署名ともいう)または、それぞれのデータに対してそれぞれの電子署名を生成し、当該電子署名を第1または第2のコードのいずれかのデータ領域に格納してもよい。例えば、第1のコードに対して、電子署名を作成し、第2のコードのデータ領域に格納してもよい。また、第2のコードに対して、電子署名を作成し、第1のコードのデータ領域に格納してもよい。第1のコードと第2のコードに対して、1個の電子署名を生成し、当該電子署名を第1コードまたは第2のコードの隣接領域に追加の第1コードまたは追加の第2のコードを格納してもよい。
 2)ドットコードに暗号化情報を形成する複合QRコードの読み取り・認証
 (1)媒体に形成(印刷、刻印、ディスプレイ等への表示により複合QRコードを認識できるあらゆる方法を含む)された複合QRコードを読み取るには、専用の複合QRコード読取り装置や、専用の複合QRコード読取りアプリをダウンロードインストールしたスマートフォンやタブレット等の情報処理装置を使用することが想定される。
 (2)専用の読取り装置または読取りアプリで、複合QRコードを読み取ると、通常のQRコード読取り手順に従って、ファインダパターン(切り出しシンボル)、アライメントパターン、クワイエットゾーン、タイミングパターン、フォーマット情報を読み取ることによって、各セルの中心座標値とセルの大きさとQRコードの向きを認識できる。明暗のみでセルを判定する場合は、撮像したセルの明暗から所定の閾値により2値化画像を生成して、各セルの2値化情報を判定してQRコードを読み取る。ドットコードは、同様な方法でドットを2値化してドットを読み取るが、各セルの判定毎にドットの配置を認識してもよいし、情報が定義された各セルの読取り終了後に、セルに形成されたドットの配置を読み取って、ドットコードを認識してもよい。なお、QRコードの情報量を増大させるため明暗のレベルまたはカラーでセルが形成される場合は、その明度、色相等で段階的にセルに2bit以上の情報をセルに定義してもよい。
 (3)次に、読み取ったQRコードのデータ領域に格納された情報(URLに限らない)のみを符号化する。符号化の概念は、1)の(1)に示した通りである。さらに、ドットコードを誤り訂正して読取り、少なくとも暗号化情報を含むデータを取得する。暗号化情報の概念は、1)の(1)に示した通りである。ここで、暗号化情報を復号化手段で復号化情報に復号化する。復号化手段は、デジタル署名における検証アルゴリズムによって署名検証を含み、署名者の公開鍵であってもよい。
 (4)最後に、(3)の読み取ったQRコードを符号化手段(例えば、キャッシュ関数)により符号化した符号化情報(例えば、キャッシュ値)と、ドットコードに格納された暗号化情報を復号化手段で復号化した復号化情報(例えば、発行機関においてQRコードが生成された際のキャッシュ値)が一致すれば、当該複合QRコードは、発行機関が発行した複合QRコードであることが認証される。なお、復号化手段には公開鍵が含まれる。ただし、認証方法は、符号化情報と復号化情報との一致・不一致に限定される訳ではない。符号化情報と復号化情報とが所定の関係にあることが確認できればよい。
 <オフラインによる複合QRコード真贋判定システムの処理例>
 (処理例1)
 図47は、真贋判定のための複合QRコード生成方法を例示するフローチャートである。複合コードの生成は、例えば、図32に例示した管理サーバMS1、コンテンツサーバCS1等の情報処理装置(以下、管理サーバMS1で例示)によって実行される。
 この処理では、管理サーバMS1は、QRコード用データを基に符号化手段(例:ハッシュ関数)で符号化情報(例:ハッシュ値)を計算する(T11)。ここで、QRコード用データとは、図1に例示したQRコードの構造のうち、データ及び誤り訂正符号の部分にデータとして組み込まれるものをいう。
 次に、管理サーバMS1は、T11で計算された符号化情報を暗号化手段で暗号化する(T12)。ここでは、符号化情報を暗号化することを、暗号化情報を計算する、ともいう。より具体的には、T12では、管理サーバMS1は、例えば、秘密鍵と公開鍵のペアを有している。管理サーバMS1は、電子認証局(CA)(又は登録局(RA))に申請して、公開鍵が登録され、公開鍵の証明書と公開鍵に対応する秘密鍵の発行を受けているものとする。管理サーバMS1は、電子認証局(CA)から発行された秘密鍵を用いて符号化情報を暗号化する。上記暗号化手段としては、管理サーバMS1において実行される暗号化処理用モジュールが例示される。
 次に、管理サーバMS1は、QRコード用データに誤り訂正を掛けてQRコードを生成する。また、管理サーバMS1は、暗号化情報を含むドットコード用データに誤り訂正を掛けてQRコードのセル内にドットコードを生成する(T13)。T13の処理によって、実施形態1から実施形態3と同様の複合コードが生成される。
 そして、管理サーバMS1は、複合QRコードを媒体に形成する(T14)。形成される媒体としては、ディスプレイ等による表示画面も含む。すなわち、図32に例示したように、生成された複合QRコードは、放送媒体、あるいは通信媒体を通じて、リモートのユーザ装置、あるいは、コンテンツサーバに提供される。また、形成された複合QRコードは、記憶媒体に記憶される。また、形成された複合QRコードは、印刷媒体に印刷される。
 図48は、複合QRコード読み取り・認証処理を例示するフローチャートである。ここで、複合QRコード読み取り・認証処理を実行する装置は、例えば、図32に例示したユーザ装置UD1、UD2等(以下、単にUD1)である。
 この処理では、まず、ユーザ装置UD1は、読取り装置で複合QRコードを読み取る(T21)。ここで、読取り装置は、例えば、複合QRコードの画像を取得する撮像装置である。また、複合QRコードを読み取るとは、媒体上の複合QRコードの画像を撮影し、主記憶装置12(図33参照)または画像メモリに格納し、QRコードとドットコードのそれぞれからデータを取得することをいう。ここで、複合QRコードのうち、QRコードにコード化されたデータをQRコード用データという。また、複合QRコードのうち、ドットコードにコード化されたデータは、T13の処理で生成されたドットコードにコード化された暗号化情報である。
 次に、ユーザ装置UD1は、QRコードから取得したQRコード用データを符号化手段(例:ハッシュ関数)で符号化情報(例:ハッシュ値)を計算する(T22)。T22の処理とともに、ユーザ装置UD1は、ドットコードから取得した暗号化情報を復号化手段で復号化情報を計算する(T23)。
 次に、ユーザ装置UD1は、符号化情報と復号化情報を照合する(T24)。そして符号化情報と復号化情報とが一致した場合、ユーザ装置UD1は、複合コードによる認証が成功したと判定し、対応する処理を実施する。例えば、ユーザ装置UD1は、複合QRコードのQRコードで指定された処理を実行する(T25)。また、例えば、ユーザ装置UD1は、複合QRコードのQRコードで指定されたURLにアクセスする。また、例えば、ユーザ装置UD1は、複合QRコードのQRコードで指定された情報が正しい情報であるとして、対応する処理を実行する。対応する処理とは、例えば、複合QRコード中のQRコードで指定されるコンテンツの再生、上記QRコードで指定される金融機関口座へのアクセス、上記QRコードで指定されるクレジットカード番号等を用いた処理、複合QRコードが印刷された媒体の真贋判定結果の表示等である。
 一方、符号化情報と復号化情報とが一致しない場合、ユーザ装置UD1は、複合コードによる認証が失敗したと判定し、結果をユーザに通知する(T26)。
 以上述べたように、処理例1によれば、複合QRコードによって、様々な認証処理、真贋判定処理、改ざん検知処理等を実施できる。上記では、QRコード用データの暗号化情報をドットコードとして埋め込む処理が例示されるが、暗号化情報をQRコードの一部にコード化し、復号化してもよい。
 (処理例2)
 図49は、ドットコード用データの暗号化情報をQRコードにコード化し、真贋判定のための複合QRコード生成方法を例示するフローチャートである。この処理では、管理サーバMS1は、ドットコード用データを基に符号化手段(例:ハッシュ関数)で符号化情報(例:ハッシュ値)を計算する(T31)。
 次に、管理サーバMS1は、符号化情報を基に暗号化手段で暗号化情報を計算する(T32)。次に、管理サーバMS1は、暗号化情報を含むQRコード用データに誤り訂正を掛けてQRコードを生成し、ドットコード用データに誤り訂正を掛けてQRコードのセルにドットコードを生成する(T33)。すなわち、ここでは、管理サーバMS1は、暗号化情報をQRコードに組み込む。そして、複合QRコードを媒体に形成する(T34)。ここで、複合QRコードが形成される媒体としては、ディスプレイ等による表示画面も含み、放送媒体、通信媒体、記憶媒体印刷媒体を含む点は、図47と同様である。
 図50は、複合QRコード読み取り・認証処理を例示するフローチャートである。この処理では、ユーザ装置UD1は、読取り装置で複合QRコードを読み取る(T41)。次に、ユーザ装置UD1は、ドットコード用データを符号化手段(例:ハッシュ関数)で符号化情報(例:ハッシュ値)を計算する(T42)。次に、ユーザ装置UD1は、QRコードから取得した暗号化情報を基に、復号化手段で復号化情報を計算する(T43)。
 そして、ユーザ装置UD1は、符号化情報と復号化情報を照合する(T44)。そして符号化情報と復号化情報とが一致した場合、ユーザ装置UD1は、複合コードに認証が成功したと判定し、対応する処理を実施する(T45)。例えば、ユーザ装置UD1は、複合QRコードのドットコードで指定された処理を実行する。また、例えば、ユーザ装置UD1は、複合QRコードのドットコードで指定されたURLにアクセスする。また、例えば、ユーザ装置UD1は、複合QRコードのドットコードで指定された情報が正しい情報であるとして、対応する処理を実行する。対応する処理とは、例えば、複合QRコード中のドットコードで指定されるコンテンツの再生、上記ドットコードで指定される金融機関口座へのアクセス、上記ドットコードで指定されるクレジットカード番号等を用いた処理、複合QRコードが印刷された媒体の真贋判定結果の表示等である。
 一方、符号化情報と復号化情報とが一致しない場合、ユーザ装置UD1は、複合コードによる認証が失敗したと判定し、結果をユーザに通知する(T46)。
 以上述べたように、処理例2によれば、複合QRコードによって、様々な認証処理、真贋判定処理、改ざん検知処理等を実施できる。なお、上記では、管理サーバMS1がドットコード用データの暗号化情報をQRコードに登録して複合コードを形成した。しかし、このような処理に代えて、管理サーバMS1は、第1のドットコード用データの暗号化情報を第2のドットコードに登録して、復号化してもよい。第2のドットコードは、例えば、第1のドットコードが形成されるセルとは異なるセルのドットコードである。
 (処理例3)
 図51は、QRコード用データを暗号化してドットコードにコード化するとともに、ドットコード用のデータを暗号化してQRコードにコード化し、真贋判定のための複合QRコード生成方法を例示するフローチャートである。
 この処理では、管理サーバMS1は、QRコード用データを基に、符号化手段(例:ハッシュ関数)で符号化情報1(例:ハッシュ値)を計算する(T51)。次に、管理サーバMS1は、符号化情報1を基に暗号化手段で暗号化情報1を計算する。すなわち、管理サーバMS1は、符号化情報1を秘密鍵で暗号化する(T52)。
 T51、T52の処理とともに、管理サーバMS1は、ドットコード用データを基に、符号化手段(例:ハッシュ関数)で符号化情報2(例:ハッシュ値)を計算する(T53)。次に、管理サーバMS1は、符号化情報2を基に暗号化手段で暗号化情報2を計算する。すなわち、管理サーバMS1は、符号化情報2を秘密鍵で暗号化する(T54)。なお、T54で使用する秘密鍵はT52で使用する秘密鍵と同一の鍵であってもよいし、異なる秘密鍵であってもよい。いずれにしても、秘密鍵に対応する公開鍵で認証が実行される。
 次に、管理サーバMS1は、QRコード用データと暗号化情報2をデータとして、誤り訂正を掛けてQRコードを生成する(T55)。さらに、管理サーバMS1は、ドットコード用データと暗号化情報1をデータとして、QRコードのセルに誤り訂正を掛けてドットコードを形成する(T56)。
 そして、管理サーバMS1は、複合QRコードを媒体に形成する(T57)。ここで、複合QRコードが形成される媒体としては、ディスプレイ等による表示画面も含み、放送媒体、通信媒体、記憶媒体印刷媒体を含む点は、図47、図49と同様である。
 図52は、複合QRコード読み取り・認証処理を例示するフローチャートである。この処理では、ユーザ装置UD1は、QRコードから取得したQRコード用データを基に、符号化手段(例:ハッシュ関数)で符号化情報1(例:ハッシュ値)を計算する(T61)。次に、ユーザ装置UD1は、QRコードから取得した暗号化情報2を基に、復号化手段で復号化情報2を計算する(T62)。すなわち、ユーザ装置UD1は、暗号化情報2を復号化情報2に復号する。
 T61、T62の処理とともに、ユーザ装置UD1は、ドットコ-ドから取得したドットコード用データを符号化手段(例:ハッシュ関数)で符号化情報2(例:ハッシュ値)を計算する(T63)。次に、ユーザ装置UD1は、ドットコードから取得した暗号化情報1を基に復号化手段で復号化情報1を計算する(T64)。すなわち、ユーザ装置UD1は、暗号化情報1を復号化情報1に復号する。
 次に、ユーザ装置UD1は、各々の符号化情報と復号化情報を照合する(T65)。個々で、照合は、符号化情報1と復号化情報1との照合、および、符号化情報2と復号化情報2との照合をいう。T65で両方の照合が一致する場合、ユーザ装置UD1は、複合コードに認証が成功したと判定し、対応する処理を実施する(T66)。T66の処理は、T25、T44の処理と同様であるので、その詳細を省略する。
 一方、T65で両方の照合が一致しない場合、ユーザ装置UD1は、複合コードによる認証が失敗したと判定し、結果をユーザに通知する(T67)。
 以上述べたように、処理例3によれば、複合QRコードによって、様々な認証処理、真贋判定処理、改ざん検知処理等を実施できる。なお、上記では、管理サーバMS1がドットコード用データの暗号化情報をQRコードにコード化し、QRコード用データの暗号化情報をドットコードにコード化して複合コードを形成した。しかし、このような処理に代えて、管理サーバMS1は、QRコード用データの暗号化情報はQRコードに、ドットコード用データの暗号情報はドットコードにコード化して、ユーザ装置UD1が両方を復号化するようにしてもよい。
 (処理例4)
 図53は、QRコード用データとドットコード用データで形成されるデータ列の暗号化情報をドットコードにコード化し、真贋判定のための複合QRコード生成方法を例示するフローチャートである。
 この処理では、管理サーバMS1は、QRコード用データとドットコード用データで形成されるデータ列を基に、符号化手段(例:ハッシュ関数)で符号化情報(例:ハッシュ値)を計算する(T71)。
 次に、管理サーバMS1は、符号化情報を基に暗号化手段で暗号化情報を計算する(T72)。すなわち、管理サーバMS1は、符号化情報を暗号化情報に暗号化する。次に、管理サーバMS1は、QRコード用データに誤り訂正を掛けてQRコードを生成する。また、管理サーバMS1は、暗号化情報を含むドットコード用データに誤り訂正を掛けてQRコードのセルにドットコードを生成する(T73)。
 そして、管理サーバMS1は、複合QRコードを媒体に形成する(T74)。ここで、複合QRコードが形成される媒体としては、ディスプレイ等による表示画面も含み、放送媒体、通信媒体、記憶媒体印刷媒体を含む点は、図47、図49、図51と同様である。
 図54は、複合QRコード読み取り・認証処理を例示するフローチャートである。この処理では、ユーザ装置UD1は、読み取り装置で複合QRコードを読み取る(T81)。次に、ユーザ装置UD1は、QRコード用データとドットコード用データをデータ列として符号化手段(例:ハッシュ関数)で符号化情報(例:ハッシュ値)を計算する(T82)。T82の処理とともに、ユーザ装置UD1は、ドットコードから取得した暗号化情報を基に、復号化手段で復号化情報を計算する(T83)。すなわち、ユーザ装置UD1は、暗号化情報を復号化情報に復号する。
 次に、ユーザ装置UD1は、符号化情報と復号化情報を照合する(T84)。そして符号化情報と復号化情報とが一致した場合、ユーザ装置UD1は、複合コードによる認証が成功したと判定し、対応する処理を実施する(T85)。T85の処理は、T25、T44、T66の処理と同様であるので、その詳細を省略する。
 一方、T85で両方の照合が一致しない場合、ユーザ装置UD1は、複合コードによる認証が失敗したと判定し、結果をユーザに通知する(T86)。
 以上述べたように、処理例4によれば、複合QRコードによって、様々な認証処理、真贋判定処理、改ざん検知処理等を実施できる。なお、上記では、管理サーバMS1はQRコード用データとドットコード用データで形成されるデータ列の暗号化情報をドットコードにコード化して複合コードを形成した。しかし、このような処理に代えて、管理サーバMS1は、QRコード用データとドットコード用データで形成されるデータ列の暗号化情報をQRコードにコード化して、ユーザ装置UD1が両方を復号化するようにしてもよい。
 (処理例5)
 図55は、QRコード用データとドットコード用データで形成されるデータ列の符号化情報をドットコードにコード化する複合QRコード生成方法を例示するフローチャートである。この処理では、秘密鍵と公開鍵は用いられない。この処理では、管理サーバMS1は、QRコード用データとドットコード用データで形成されるデータ列を符号化手段(例:ハッシュ関数)で符号化情報(例:ハッシュ値)を計算する(T91)。次に、管理サーバMS1は、QRコード用データに誤り訂正を掛けてQRコードを生成し、T91で生成した符号化情報を含むドットコード用データに誤り訂正を掛けてQRコードのセルにドットコードを生成する(T92)。
 そして、管理サーバMS1は複合QRコードを媒体に形成する(T93)。ここで、複合QRコードが形成される媒体としては、ディスプレイ等による表示画面も含み、放送媒体、通信媒体、記憶媒体印刷媒体を含む点は、図47、図49、図51、図53と同様である。
 図56は、複合QRコード読み取り・認証処理を例示するフローチャートである。この処理では、ユーザ装置UD1は、例えば、コンテンツサーバから取得した情報から、読み取り装置で複合QRコードを読み取る(T101)。次に、ユーザ装置UD1は、QRコード用データとドットコード用データをデータ列として符号化手段(例:ハッシュ関数)で符号化情報(例:ハッシュ値)を計算する(T102)。次に、ユーザ装置UD1は、ドットコードから符号化情報(例:ハッシュ値)を取得する(T103)。
 次に、ユーザ装置UD1は、計算した符号化情報と取得した符号化情報を照合する(T104)。そして符号化情報と復号化情報とが一致した場合、ユーザ装置UD1は、複合コードによる認証が成功したと判定し、対応する処理を実施する(T105)。T105の処理は、T25、T44、T66、T85の処理と同様であるので、その詳細を省略する。
 一方、T105で符号化情報と復号化情報とが一致しない場合、ユーザ装置UD1は、複合コードによる認証が失敗したと判定し、結果をユーザに通知する(T106)。
 処理例1から処理例4とは異なり、処理例5では、誤り訂正が正しかったかを確認できる。また、T91とT102で用いられる符号化処理が、管理サーバMS1とユーザ装置UD1だけが特定できる処理である場合には、処理例1から処理例4と同様に、様々な認証処理、真贋判定処理、改ざん検知処理等を実施できる。
 図47から図54で説明した電子認証の全てに対して、下記のケースも含み、誤り訂正が正しかったかを認証できる。
・QRコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報を、ドットコードに格納
・QRコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報を、QRコードに格納
・ドットコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報を、QRコードに格納
・ドットコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報を、ドットコードに格納
・QRコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報をドットコードに、ドットコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報をQRコードに、それぞれ格納
・QRコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報をQRコードに、ドットコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報をドットコードに、それぞれ格納
・QRコードのデータと、ドットコードのデータから形成されるデータ列の符号化情報を暗号化手段で暗号化した暗号化情報を、QRコードに格納
・QRコードのデータと、ドットコードのデータから形成されるデータ列の符号化情報を暗号化手段で暗号化した暗号化情報を、ドットコードに格納
 同様に、図55および図56で説明した電子認証の全てに対して、下記のケースも含み、誤り訂正が正しかったかを認証できる。
・QRコードのデータの符号化情報をドットコードに格納
・QRコードのデータの符号化情報をQRコードに格納
・ドットコードのデータの符号化情報をQRコードに格納
・ドットコードのデータの符号化情報をドットコードに格納
・QRコードのデータの符号化情報をドットコードに、ドットコードのデータの符号化情報をQRコードに、それぞれ格納
・QRコードのデータの符号化情報をQRコードに、ドットコードのデータの符号化情報をドットコードに、それぞれ格納
・QRコードのデータと、ドットコードのデータから形成されるデータ列の符号化情報を、QRコードに格納
・QRコードのデータと、ドットコードのデータから形成されるデータ列の符号化情報を、ドットコードに格納
 <実施形態6の特長と用途>
 以下、実施形態6で説明したオフラインによるドットコードに暗号化情報を形成する複合QRコードの特長と用途(認証系とコンテンツ系)を列挙する。
 (複合QRコードの特徴例と効果)
 複合QRコードは、ネットで認証をしなくても電子認証が可能であり、ネット上でのハッキング等の防止に繋がる。さらに、コンテンツや様々なネット上のサービスを提供するサービス提供業者は、ユーザに複合QRコード読取りアプリさえダウンロードインストールする仕組みを提供すれば、複合QRコードを使用した様々なコンテンツサービスや電子認証のための面倒な管理と費用を要するサーバを運営する必要がない。したがって、サービス提供業者は、継続したユーザへのサービスが安価に提供できる。その他、零細なサービス企業でも、サーバを構築することなく複合QRコードを使用した様々なコンテンツサービスを提供できる。
 (翻訳機能の搭載、各国言語データの搭載)
 さらに、コンテンツでの利用では、アプリに翻訳・通訳等の出力機能を備えれば、1つのハイブリッドQRコードで取得した様々なコンテンツの世界各国での利用が可能となる。一方、各国語のテキストや少量の音声データや画像を識別できるように媒体に形成された複合QRコードに格納し、アプリに翻訳・通訳機能を搭載していなくても必要な言語のテキスト・画像の表示や音声を再生できる。当然、複合QRコードをディスプレイに表示して、時系列ドットコードやカラードットコードを使用すれば、容量の小さなアニメーションも同様に各国語用のデータにして複合QRコードに格納し、各国のコンテンツを取得できる。
 (複合QRコードへのデータ格納の仕方)
 複合QRコードは、URL等が格納されたQRコードを、複合QRコードリーダーだけでなく、普及しているQRコードリーダーでも読み取ることができることを特長にしているが、ドットコードの占める面積は最大でも20%以下であり、さらに、従来のQRコードリーダーは、点のような画像はノイズとして扱い無視して、QRコード読取りに支障をきたすことはない。また、データをドットコードに格納し、図49、図50のように、電子署名をQRコードのデータ領域に格納してもよい。なぜなら、ドットコードの方が遥かに多くの情報を格納できる特長を生かせるからである。そこで、容量の小さなURL等のデータはQRコードに格納し、コンテンツ等の容量の大きなデータはドットコードに格納すればよい。さらに、ドットコードのタイプやバージョン、誤り訂正符号のバージョン等のフォーマット情報もQRコードに格納して、ドットコードには少なくともデータと誤り訂正符号を格納して、QRコードにより得られる情報でドットコードを読み取るようにしてもよい。これにより、ドットコードのデータフォーマットを可変にすることができ、汎用性を高めることができる。すなわち、利用分野毎にドットコードのデータフォーマットを定めることができ、どのような複合QRコードリーダーでも適正にドットコードを読み取ることが可能となる。
 (様々なチケットとしての用途)
 購入したチケット番号等が格納された複合QRコードがチケット販売先から送付され、チケット使用時には、複合QRコード対応アプリがクラウドからの送信により時間変化するワンタイムパスワードをドットコードで表示することにより、入場確認の際に複合QRコード読取り装置で読み取られ、チケットを購入した人だけしか、入場をできないようにできる。さらに、チケット購入者のスマホIDを取得して、当該スマホにワンタイムパスアワードを送信することにより、チケットの転売を防止することもできる。ドットコードにワンタイムパスワードを格納すれば、ドットが変化しても視認しづらいので、ワンタイムパスワードが使用されていることをユーザに意識させないようにできる。一方、QRコードにワンタイムパスワードを格納すれば、QRコードが変化するため、コピー防止を実施していることをユーザに伝え、偽造者に対して抑止効果がある。現行のQRコードは、その内容を誰でも読み取ることができ、誰でも生成することができる。チケットが印刷媒体であって、チケット番号をQRコードに埋め込む場合は、QRコードから読み取った情報を基にリバースエンジニアリングを実施することにより、チケット番号の発行を第三者が実施できる可能性が高い。チケット番号発行手順が分かれば、異なるチケット番号を容易に生成できる。
 複合QRコード読取りアプリは、一般に広く提供するが、複合QRコードの生成は、特定の複合QRコード発行機関のみができるようにするか、複合QRコード発行業者に対してのみ、チケット番号として使用する特定のドットコード(限定されたユニークなドットコード)のみを符号化できる複合QRコード生成アプリを提供すればよい。これにより、取得したチケットのチケット番号とは異なるチケット番号の偽造チケットを制作することはできなくなる。なお、世の中に発行される複合QRコードを完全なユニークコードとした場合、特定のユニークなドットコードに限定して符号化できる複合QRコード生成アプリが生成する複合QRコードと、他の生成アプリで生成できる複合QRコードと重複しないようにすればよい。なお、チケットは、イベント参加や施設入場、交通機関利用、食券、行政サービスの利用券等、様々なサービスを取得するためのものである。本実施例では、チケット番号としてユニークなドットコードを符号化できる複合QRコード生成アプリについて記載したが、どのような分野でのどのような利用においても、その都度の契約の下に特定のユニークなドットコードを限定して符号化できる複合QRコード生成アプリを提供するサービスが望ましい。もちろん、複合QRコード発行機関では、常にユニークな複合QRコードを発行する。なお、複合QRコードはQRコードとドットコードとが複合されたコードであり、ドットコードが同一で、QRコードがユニークであっても、ユニークな複合QRコードを生成できることは言うまでもない。
 (生体認証での用途)
 膨大な本人情報(顔、指紋、虹彩、静脈等の生体情報)を、誤り訂正を掛けてドットコードに登録する。本人情報が改ざんされないように、QRコードまたはドットコードのいずれかに電子署名をする。使用方法は、決済等をする際に、複合QRコードを表示して、それを読取り取得した生体情報と、その場で本人から取得(カメラやセンサーによる顔や指紋、虹彩、静脈情報等の取得)した生体情報が一致するかで、無人でも本人確認ができ、金融決済や重要施設の入室、重要機器の操作が、高セキュリティで実施できる。なお、スマートフォン等の本人情報の登録は、搭載されているカメラで顔や指紋、虹彩を撮影することにより容易に行える。なお、本人情報は、スマートフォンで顔や指紋、虹彩を撮影した生データでもよいし、専用アプリで生データを解析した特徴点データあってもよい。特徴点データの場合はデータ量が小さくなることが利点であるが、当該特徴点データと同じ特徴点を生成する特定の照合システムを使用することが前提となり汎用性に乏しい。生データの場合は、現場で取得された生体情報との照合をどのようなシステムで実施しても構わないことから汎用性に優れている。生データの容量は多量の情報量となり従来のQRコードでは格納できなかったが、複合QRコードでは十分、それらの情報を格納できる。現在の顔認証技術においては、2~3KBに圧縮された写真で実現できる。
 (決済手段、送金手段としての用途)
 電子署名をした複合QRコードにクレジットカードやプリペイドカード、キャッシュカード等の金融情報が格納されていれば、極めてセキュリティ性の高い金融決済ができる。さらに、ワンタイムパスワード等もQRコードやドットコードで同時に発行すれば、さらにセキュリティ性は高まる。特に、ドットコードでのパスワードの表示では、大きな情報量のパスワードを発行でき、1秒間に数回以上のワンタイムパスワードの表示が可能であり、ドットが小さいためショルダーハッキングのような盗撮などで盗まれる可能性が極めて低くなる。このような、金融決済の実施例では、店舗側のシステムが購入品の品目や単価、支払い合計額等を印刷した印刷媒体を購入者に提供するか、当該内容をディスプレイに表示すればよい。購入者が表示内容を確認した後、購入者のスマートフォンに金融決済カード情報を表示すると、店舗側のシステムが複合QRコードリーダー(スマートフォンでもよい)で読取り、読み取った金融決済カード情報を基に金融決済サーバに、購入品決済情報を送信する。そして、金融決済サーバは決済承認すると、店舗側のPOSに直ちに通知し、商品の購入が完了する。さらに、購入者のスマートフォンには、購入品決済情報や購入店舗情報等の決済完了情報が送信されてもよい。このように、レシートを発行しないで決済することができ、店舗側はプリンタの運用を無くし、購入者は購入品の情報をデータとして管理できる。また、決済できない場合、クレジットカードの超過利用やプリペイドカード、銀行口座で残金が足りない場合も、それらの情報がスマートフォンに表示されてもよい。
 クレジットカードやプリペイドカード、銀行口座等の金融決済の実施例としては、複合QRコードを使用するシステムでは、購入者がスマートフォンに金融決済カード情報を複合QRコードで表示し、店舗側のシステムが複合QRコードリーダー(スマートフォンでもよい)でスマートフォンの表示内容を読取り、読み取った金融決済カード情報を基に、金融決済サーバに購入品決済情報を送信する。そして、金融決済サーバは決済承認すると、決済承認結果を店舗側のPOSに直ちに通知し、商品の購入決済が完了する。さらに、購入者のスマートフォンには、購入品情報や購入店舗情報等の情報が送信され、「決済」、「中止」や「一括払い」「分割払い」等のアイコンが表示され選択して決済してもよい。また、決済できない場合、クレジットカードの超過利用やプリペイドカード、銀行口座で残金が足りない場合も、それらの情報がスマートフォンに表示されてもよい。店舗側のシステムが購入品の品目や単価、支払い合計額等を印刷した印刷媒体を購入者に提供するか、または当該内容をディスプレイに表示して購入者が確認した後、クレジットカード等により決済すればよい。
 もう1つの実施例では、店舗側がPOSのディスプレイ(スマートフォンでもよい)に複合QRコードを表示し、購入者が当該複合QRコードを読み取ると、購入品の品目や単価、支払い合計額が表示され、「決済」、「中止」や「一括払い」「分割払い」等のアイコンが表示され選択すると、金融決済サーバにそれらの決済情報が送信され、決済承認されれば店舗側のPOSに直ちに通知され、商品の購入が完了する。プリペイドカードや銀行口座で残金が足りない場合は、残高や不足分等が表示される。なお、カードを相手方に渡さないことは、カードの情報を容易にコピーされないことを意味しており、なりすまし被害を抑えることができる。
 (送金処理への適用)
 さらに、個人間で送金したい場合、送金者が金額をスマートフォンに入力すると、送金者や金額等の送金情報が登録された複合QRコードが表示される。相手が自身のスマートフォンで読取り、「確認」アイコンをタップすると送金者に通知され、誰に幾ら送金されるかが表示され、「決済」アイコンをタップすると、相手に送金が実施され、個人間の金融取引が成立する。他の方法では、相手のスマートフォンに送金先情報等が登録された複合QRコードを表示させ、送金者のスマホで読み取ると送金先情報が表示され、金額をスマートフォンに入力して、「決済」アイコンをタップすると、相手に送金が実施され個人間の金融取引が成立する。その際、複合QRコードに写真等の本人情報が登録されていれば、着金者の本人確認が容易になる。いずれも、本人以外の第三者が送金できないようにセキュリティを高めるために、「決済」アイコンをタップする際にパスワードを入力してもよい。これらの金融取引に関して、金額、日付以外に‘貸借’や‘贈与’、‘対価’等を分類し、記録に残すこともできる。
 (クーポンとしての利用)
 ポイントやクーポン、スタンプでの利用では、顧客が特典を獲得する場合に、特典を獲得できる複合QRコードを、特典提供者のシステムがどこにでも形成(印刷まはディスプレイ表示)し、顧客のスマートフォンで読み取ることにより特典を取得できる。また、特典提供者のシステムは、顧客のスマートフォンで表示した複合QRコードを読取り、電話回線やWIFI、ブルーツース等、様々な通信手段で顧客のスマートフォンに特典を付与したり、利用した特典を消込することができる。当該複合QRコードには、通信先の電話番号やアドレス、スマホID、会員番号等を含めてもよい。
 (証明証としての利用)
 システムが免許証や健康保険証、学生証、社員証、会員カード、パスポート等、本人を確認する場合、本人が当該カードを提示しなくても、それらの情報をドットコードに格納して、本人が複合QRコードをスマートフォンに表示させてもよい。システムは、複合QRコード読取り装置でドットコードを読取り、読取り装置に対して必要な情報を表示させ、本人に生年月日や住所等を告げて貰い、本人であることを確認できる。なお、印刷媒体やディスプレイ等に形成された複合QRコードの読取りは、スマートフォンに搭載した専用アプリケーションによって行うこともできる。特に、写真もドットコードに格納できるので、従来の写真を見ての本人確認も、カードが無くても可能となる。確認を行う相手方のシステムに、それらのカード情報が渡っても、郵便局や病院では、カードをコピーするのが習慣であるが、むしろ、スマートフォン(専用アプリ)による複合QRコードの表示や読取り、専用読取り装置による複合QRコードの読取りでは、読み取ったデータに含まれる写真や生年月日、住所等の一部のみを表示し、その他の情報は非表示にすることによりセキュリティを高めることができる。さらに、読み取った複合QRコードを時間や場所等と共に履歴を、読み取ったシステムがトレースできることからビッグデータとしても利用可能となる。なお、カードを相手方に渡さないことは、カードの情報を容易にコピーされないことを意味しており、なりすまし被害を抑えることができる。
 (記録手段としての利用)
 医療や法廷での資料から不動産や金融関連の契約等、様々な分野で紙媒体の情報を保存することが義務付けられている。OCRでデジタル化してクラウドに記録し検索すれば、システムはテキスト情報を取得できるが、人が紙媒体を見て、それらの情報を検索するのは面倒である。複合QRコードは、紙媒体数ページ分のテキスト(4,000文字程度、カラードットを使用できれば、1万文字以上)を格納することができ、システムはその場で印刷された複合QRコードを読取り、当該情報を容易に取得できる。複合QRコードの添付は、i)システムがOCRで読み取って得られたデータと共に任意の位置に印刷してもよいし、ii)システムが複合QRコードをシール等に印刷し、原文書や印刷文書に貼り付けられるようにしてもよい。iii)なお、原文書に複合QRコードを印刷する所定の領域(文書近傍または内部)が形成されている場合には、システムは、原文書(原文書への重畳印刷)やOCRにより得られたデータによる印刷文書の当該領域に複合QRコードを印刷してもよい。
 さらに、新聞や雑誌、カタログ、チラシ等、様々な活字印刷媒体にハイブリッドQRコードに当該文書等を格納・印刷することにより、インターネットを使用せずとも、記載されている情報や更なる情報を提供することができる。
 (情報授受手段として利用)
 様々な情報のやり取りにおいても、複合QRコードによって安全性が向上する。例えば、ユーザは、メールアドレスやSNSにおける連絡先を相手に教えることなく、複合QRコードを使用すれば写真や音声、テキスト等を容易に送受信できる。例えば、写真であれば、スマートフォンで閲覧する場合の高品質の写真や10分程度の音声、数万文字以上のテキストを格納できる。テキストの文字数に関しては前述しているのでここでは説明を省くが、音声においては、ADPCM(適応的差分パルス符号化変調)とデータ圧縮技術によって0.3KBPSとなるが、MELP(混合励振線形予測)とデータ圧縮技術によって0.1KBPSで可能となり、ドットコードには最大2KB程度の情報を格納できることから20秒程度の聞き取り可能な音声が格納できる。なお、画像においては、JPEGで2KB程度の写真(人の目による本人確認ができる程度)の写真等のコンテンツを取得できる。さらに、最新の静止画像圧縮技術(BPG、あるいは次世代JPEGであるJPEG XL等)によって顔画像認識に十分耐えうる品質を保持できる。なお、専用の高解像度の複合QRコード読取り装置を使用し、印刷されたQRコードの最大情報量を有するバージョン40、177×177セルに対応する複合QRコードでは、8倍の約24KBバイトの情報を格納できる。赤外線やブルーツース等、スマートフォンで情報をやり取りできる機能も多々あるが、全てのスマートフォンで当該機能が使用できない。しかし、ユーザが複合QRコード読取り専用アプリをスマートフォンにダウンロードインストールをすれば、複合QRコードの表示・読取りは殆どのスマートフォンで利用できるため、普及の可能性が極めて高い。例えば、集合写真を撮った後、複合QRコードを印刷またはディスプレイに表示し、当該複合QRコードを各自が読み取れば、全員がアドレス等を伝えなくても、自身のスマートフォンに集合写真を取得することができる。複合QRコードを印刷しておけば、サーバ等にアップしなくても、卒業アルバム等の記念写真やメッセージを何時でも何処でも永遠に取得できる。これまでは、長年に渡って写真情報を閲覧・ダウンロードできるサーバ環境を運営する必要があったが、本実施形態ではそのような、サーバ管理やコストの無駄を省ける。このような本発明の効果は様々なコンテンツ分野に利用でき、サーバ構築・管理を継続する責任から逃れることができる大きなメリットを有する。正に売り切りのビジネスモデルを展開できる。
 なお、スマートフォンその他のシステムが高品質な写真や10分程度の音声、数万文字以上のテキストを格納して、スマートフォンに複合QRコードを表示する際に、例えば、第1のコード(QRコード)の表示を固定し、異なる複数の第2のコード(ドットコード)を所定時間ずつ表示することにより多量な情報を生成できる。読み取り装置が複合QRコードリーダーで点滅する時系列ドットコードを読み取る場合、一度だけ、QRコードを読み取るだけで、その後は、ドットコードのみを読み取ることにより高速に処理できる。撮影時の手振れが生じた場合に、読み取り装置がタイミングパターンやアライメントパターンの撮像位置の変化を追跡し、都度、検出したドット位置の補正を行えば、ドットコードを正確に読み取ることができる。複合QRコードをスマートフォンに表示し、他のスマートフォン等の読み取り装置で当該複合QRコードを読み取る場合、ドットコードに格納できる1回の情報量は0.85K程度であるが、2~3秒間にドットコードを24回程度、変化させる時系列ドットコードとカラードットコードにより、読み取り装置は、20KB以上の情報量を取得することができる。これを写真データで再現すると、読み取り側のスマートフォンで表示した場合、ユーザは十分に高品質な画像として閲覧でき、表示側のスマートフォンは、7万文字を超えるテキスト情報も送信できる。
 (ドットコードのカラー化)
 前述のようにドットのカラー化により、複合QRコードの情報量をさらに増大することが可能である。読取り装置ではドットの色をRGBで読み取るため、色の表示が機種毎に異なるどのようなディスプレイでも、少なくとも赤(R)、緑(G)、青(B)、黄(RGの混色)、シアン(GBの混色)、マゼンダ(RBの混色)、黒、白(ドット無し)を識別することができ、それだけで、1ドット当り3bitが増加させることができる。つまり、1セル当りの情報量が3倍になる。現在、符号可変長技術を用いれば、情報量をさらに2倍、つまり6倍程度に増加できる可能性が高い。この結果、システムは、時系列ドットコードの時間変化と併用して、カラードットコードを時間変化させることにより、QRコードの数100倍を超える多量の情報を送信できる。このことから、解像度および色数が小さく尺が短ければ、システムはアニメーションの送信も可能である。システムが複合QRコードを時間変化させるような場合、電子認証の実行は最初の複合QRコードに格納されたコンテンツのみでもよい。さらに、コンテンツ部分を電子認証しないケースが有ってもよい。これらの処理は、アニメーションだけではなく、多量のテキストや高解像度の画像の授受に適用してよい。
 (情報取得、情報提供サービスへの適用)
 情報取得の実施例としては、例えば、ユーザはサイネージとしてポスター印刷やディスプレイに表示された複合QRコードから、様々な情報を直ぐに取得できる。通常、ユーザは、無線通信回線、有線通信回線、専用回線、あるいはインターネット等の公衆回線等を使用して情報を取得する。しかし、ユーザは様々な媒体上の複合QRコードの読み取りを通じて、そのような通信環境が無くてもどこでも無償で情報を取得できる。さらに、アプリに翻訳・通訳等の出力機能を備えれば、1つの複合QRコードで取得した様々なコンテンツを世界各国の人の利用が可能となる。一方、媒体が各国語のテキストや少量の音声データや画像を識別できるように媒体に形成された複合QRコードに格納し、読み取り装置が媒体から複合QRコードを読み出すことで、アプリに翻訳・通訳機能を搭載していなくても必要な言語のテキスト・画像の表示や音声の再生が可能となる。当然、複合QRコードをディスプレイに表示して、時系列ドットコードやカラードットコードを使用すれば、容量の小さなアニメーションも同様に各国語用のデータにローカライズして複合QRコードに格納することが可能となり、ユーザはインターネットや翻訳アプリを使用せずとも各国のコンテンツを取得できる。
 写真取得の実施例としては、プリクラ(登録商標)や証明写真等の撮影ボックスで撮影した自身の写真を複合QRコードに格納させ、撮影ボックスのディスプレイに当該複合QRコードを表示させて、自身のスマートフォンで撮影することにより、写真のデータを取得できる。インターネットにより撮影した写真を提供するサービスがあるが、撮影した写真は個人情報でありインターネットでは漏洩する可能性があるが、複合QRコードにより漏洩を防ぐことができる。高品位の写真を提供するため、カラードットコードや時系列ドットコードを使用するのが望ましい。
 音声取得の実施例では、情報提供側のシステムが書籍、雑誌、教科書、絵本、カタログ、チラシ、新聞、ポスター、パッケージ、シール、処方箋等、様々な印刷媒体に、音声情報が格納された複合QRコードを印刷して配布することで、ユーザがスマートフォンで読取り、音声再生できる。なお、スマートフォンで設定された言語で音声情報が再生されてもよいし、他言語を設定して音声情報を再生してもよい。なお、情報提供側のシステムが音声だけでなくテキストや画像等の情報を格納して、ユーザがそれらの情報を取得できることは言うまでもない。さらに、アプリに翻訳・通訳等の出力機能を備えれば、1つの複合QRコードで取得した様々な音声コンテンツの世界各国での利用が可能となる。一方、各国語の音声データを識別できるように媒体に形成された複合QRコードに格納することで、スマートフォン等のシステムは、アプリに翻訳・通訳機能を搭載していなくてもユーザ所望の言語で音声を再生できる。当然、システムが複合QRコードをディスプレイに表示して、時系列ドットコードやカラードットコードを使用すれば、容量の小さなアニメーションも同様に各国語用のデータにして複合QRコードに格納することが可能となり、ユーザは、スマートフォン等の携帯端末で複合QRコードを読み取ることで、各国のコンテンツを取得できる。なお、本実施例では、複合QRコードを媒体に印刷された印刷媒体としているが、様々な媒体に刻印により複合QRコードを生成してもよい。さらに、簡易な点字をドットコードの一部に形成し、格納されている情報を点字で表現してもよい。
 (ゲームでの利用)
 ゲームの実施例では、ユーザはキャラクタやアイテムが格納された複合QRコードを自身のスマートフォンで表示し、提供する相手のスマートフォンで読み取らせることにより交換ができる。その結果、人と人との対面によるコミュニケーションにより新感覚のゲームが開発できる。また、情報提供側のシステムがキャラクタやアイテムの他、スポーツ選手、芸能人等をカード表面に印刷したトレーディングカードやゲームカードの表面または裏面の少なくともいずれかに複合QRコードを印刷し当該カード特有のテキスト、画像、音声等の情報を格納し、ユーザが取得できるようにしてもよい。さらに、送付者側システムがグリーティングカードに複合QRコードを印刷すると、送付者を撮影した写真や動画、図形、相当量のテキスト等も送付先で取得することができる。ここで、送付者側システムはインターネットに送付する情報を複合QRコードにアップしてもよい。一方、それらの情報を格納した複合QRコードをユーザが印刷できるようにすれば、インターネットを使用せずとも、紙媒体を介して送付者からの情報を送付先で取得できる。但し、印刷された複合QRコードでは、情報量に限りがあるので、動画や高精細の写真は難しいと言える。
 (アプリのコード化)
 時間変化させる時系列ドットコードやカラードットコードにより、読み取り装置は膨大な情報を取得できることから、アプリを複合QRコードに格納し、ダウンロードすることなく簡便にアプリをインストールすることもできる。すなわち、インターネットを使用できない環境であってもアプリをインストールできるだけでなく、クラウドやサーバに登録し運営することなくアプリを、様々な媒体(紙媒体、放送媒体等)を通じて無経費で継続的に提供できる。正に売り切りのビジネスモデルを展開できる。
 (複合QRコード発行システム)
偽物オンラインショッピングやクレジットカード情報のハッキング等、偽装QRコードが多大な被害をもたらしている。
 そこで、複合QRコードの公式発行機関を設け、複合QRコード使用者(事前に公式発行機関が承認した使用者)がURL等のデータを公式発行機関に送信すると、ドットコードに電子署名された複合QRコードが生成され使用者に提供される。使用者は、複合QRコードであることを示す認定マーク(認定マークをQRコードの中央に配置してもよい)と共に、その複合QRコードを印刷またはディスプレイに表示して使用する。公式発行機関は、複合QRコードの読取りアプリを無償でユーザに提供する。ユーザは認定マークがあれば、当該アプリで複合QRコードを読取り真贋判定できる。事業モデルは、i)複合QRコード使用者承認手続き、ii)複合QRコード発行、iii)複合QRコードの読取りアプリ使用時の広告費等で課金できる。
 個人を特定して電子認証や様々なサービスを享受する場合、個人IDとして公式発行機関より、複合QRコードを発行してもよい。個人ID複合QRコードには、本人の名前、生年月日、住所、写真等、個人の基本情報が登録される。その他、クレジットカード情報や銀行口座、免許証や健康保険証等の証明書の情報を登録してもよい。個人ID複合QRコードリーダーは、公式発行機関が承認した法人に対してのみ提供するようにし、その専用リーダーは使用記録等、厳重に追跡調査ができるように管理してセキュリティを確保すればよい。本人認証では、システムは、名前、生年月日、住所、写真等による確認で済むため、汎用の複合QRコードリーダー(アプリ)を使用して、使用後には、本人情報が直ちに削除され本人情報の漏洩を防ぐようにすればよい。
 図47~図54のフローチャートでは、各種データの符号化情報を暗号化した暗号化情報を複合QRコードに格納して、暗号化された符号化情報に対応するデータの真贋判定の実施を示している。一方、印刷時の情報欠落や汚れ、複合QRコードの撮影状態等で読み取った複合QRコードが、作成時の複合QRコードとは完全に一致しないことが多々ある。ディスプレイに表示された複合QRコードも複合QRコードの撮影状態等で同様に一致しないことがある。そこで、図55~図56のフローチャートでは、真贋判定は完全にできないものの、誤り訂正符号により、誤り訂正が適正に実施できたかを容易に判定できる方法を示している。
 <変形例>
 上記図47から図56では、管理サーバMS1が複合QRコードを生成し、ユーザ装置UD1が複合QRコード読み取り・認証処理を実行したが、上記処理は、管理サーバMS1とユーザ装置UD1との関係に限定される訳ではない。すなわち、上記複合QRコード読み取り・認証処理は、管理サーバMS1とコンテンツサーバCS1、CS2等の間で実施してもよい。また、上記複合QRコード読み取り・認証処理は、コンテンツサーバCS1、CS2等と、ユーザ装置UD1、UD2との間で実施してもよい。また、上記複合QRコード読み取り・認証処理は、ユーザ装置UD1とユーザUD2との間で実施してもよい。すなわち、上記複合QRコード読み取り・認証処理は、情報を提供する側とデータを取得する側との間で、複合QRコード中のQRコードで提示される情報の正当性を認証するためのいかなる処理にも適用可能である。
 [実施形態7]
 以下、図57から図60を参照して、実施形態7におけるオンラインで処理される真贋判定システムを説明する。
 <オンラインによる複合QRコード真贋判定システム>
 (1)スマートフォンに複合QRコード読取りアプリをダウンロードインストールすると、当該スマートフォンIDを取得でき、認証サーバで逐次、認証するため、どのスマートフォンで何時、複合QRコード読取りアプリを読み取ったかが分かる。さらにGPSと連動すると何処で読み取ったかも分かり、それらのログを取得し、詳細なマーケッティングに使用できる。
 (2)認証サーバによる複合QRコードの認証では、必ず認証サーバでの認証が不可欠となることから、認証毎に複合QRコード発行依頼企業に対して、課金ビジネスモデルが展開できる。
 (3)複合QRコードから読み取ったハッシュ値と電子署名を認証サーバに送信すると、電子署名を復号して求まるハッシュ値と受信したハッシュ値を照合することにより公開鍵を使用しなくても複合QRコードの真贋判定が可能となる。
 (処理例6)
 処理例6は、処理例4をオンライン認証に適用した場合の処理である。図57は、QRコード用データとドットコード用デー;タで形成されるデータ列の暗号化情報をドットコードにコード化し、真贋判定のための複合QRコード生成方法を例示するフローチャートである。図57で、複合QRコードを生成するT111、T112、T113、およびT114の処理は、図53のT71からT74と同様である。生成された複合コードは、例えば、管理サーバMS1を介して、ユーザ装置UD1に提供される。
 図58は、複合QRコード読み取り・認証処理を例示するフローチャートである。この処理では、ユーザ装置UD1は、読取り装置で複合QRコードを読み取る(T121)。次に、ユーザ装置UD1は、QRコード用データとドットコード用データをデータ列として符号化手段(例:ハッシュ関数)で符号化情報(例:ハッシュ値)を計算し、認証サーバに送信する(T122)。ここで、認証サーバは、例えば、図32に例示した管理サーバMS1、コンテンツサーバCS1等、ネットワークでアクセス可能なサーバ装置である。次に、ユーザ装置UD1は、ドットコードから取得した暗号化情報を認証サーバに送信する(T123)。
 次に、認証サーバは、符号化情報と復号化情報を照合する(T124)。そして符号化情報と復号化情報とが一致した場合、認証サーバは、複合コードによる認証が成功したと判定し、対応する処理を実施する(T125)。T125の処理は、T25、T44、T66、T85の処理と同様であるので、その詳細を省略する。
 一方、T124で両方の照合が一致しない場合、認証サーバは、複合コードによる認証が失敗したと判定し、結果をユーザに通知する(T126)。
 以上述べたように、処理例6によれば、複合QRコードによって、様々な認証処理、真贋判定処理、改ざん検知処理等をオンラインで実施できる。なお、上記では、管理サーバMS1はQRコード用データとドットコード用データで形成されるデータ列の暗号化情報をドットコードにコード化して複合コードを形成した。しかし、このような処理に代えて、管理サーバMS1は、QRコード用データとドットコード用データで形成されるデータ列の暗号化情報をQRコードにコード化して、ユーザ装置UD1が両方を復号化するようにしてもよい。
 以上の処理では、認証サーバで行う認証は、秘密鍵を用いて行ってもよい。また、上記では、処理例4と同様に、QRコード用データとドットコード用データで形成されるデータ列の暗号化情報を用いた。しかし、このような処理に代えて、処理例1から処理例3の処理をオンライン認証に適用してもよい。
 すなわち、処理例1のように、QRコードの暗号化情報をドットコードにコード化して認証サーバによるオンライン認証に適用してもよい。また、QRコードの暗号化情報をQRコードにコード化して、認証サーバによるオンライン認証に適用してもよい。
 また、処理例2のように、ドットコードの暗号化情報をQRコードにコード化して認証サーバによるオンライン認証に適用してもよい。また、ドットコードの暗号化情報をドットコードにコード化して認証サーバによるオンライン認証に適用してもよい。
 さらに、処理例3のように、QRコードの暗号化情報1とドットコードの暗号化情報2をそれぞれドットコードとQRコードとにコード化して認証サーバによるオンライン認証に適用してもよい。この場合に、QRコードの暗号化情報1をドットコードにコード化し、ドットコードの暗号化情報2をQRコードにコード化してもよい。逆に、QRコードの暗号化情報1をQRコードにコード化し、ドットコードの暗号化情報2をドットコードにコード化してもよい。また、QRコードとドットコードの暗号化情報をQRコードにコード化してもよい。
 (処理例7)
 図59は、QRコードとドットコードの符号化情報をQRコードにコード化する処理例である。この処理では、処理例5と同様に、暗号化は行われない。この処理では、複合QRコードを生成するT131、T132、T133の処理は、図55のT91からT93と同様である。生成された複合QRコードは、例えば、管理サーバMS1を介して、ユーザ装置UD1に提供される。
 図60は、複合QRコード読み取り・認証処理を例示するフローチャートである。この処理では、ユーザ装置UD1は、読取り装置で複合QRコードを読み取る(T141)。次に、ユーザ装置UD1は、ドットコードから取得した符号化情報(例:ハッシュ値1)、および、読み取ったQRコード用データと読み取ったドットコード用データとで形成されるデータ列を認証サーバに送信する(T142)。
 次に、認証サーバは、受信したデータのうち、ユーザ装置UD1で読み取られたQRコード用データとドットコード用データとで形成されるデータ列を符号化し、符号化情報(例:ハッシュ値2)を作成する。そして、ユーザ装置UD1でドットコードから取得した符号化情報(例:ハッシュ値1)と、認証サーバにおいて符号化したデータ列(例:ハッシュ値2)を照合する(T143)。そして符号化情報と復号化情報とが一致した場合、認証サーバは、複合コードによる認証が成功したと判定し、対応する処理を実施する(T144)。T144の処理は、T25、T44、T66、T85、T125の処理と同様であるので、その詳細を省略する。なお、対応する処理は、T25、T44、T66、T85、T125と同様の処理をユーザ装置UD1あるいはユーザ装置UD1がアクセスしているネットワーク上の他のサーバに許容するものでもよい。
 一方、T143でハッシュ値1とハッシュ値2が一致しない場合、認証サーバは、複合コードによる認証が失敗したと判定し、結果をユーザに通知する(T145)。すなわち、この場合には、認証サーバは、ユーザ装置UD1あるいはユーザ装置UD1がアクセスしているネットワーク上の他のサーバに対して、T145で実行される処理を許容しない。
 本処理例では、秘密の符号化手段で符号化情報を作成し、電子認証すれば、データ作成時の符号化情報の暗号化は必要ない。すなわち、ハッシュ値のみで認証が可能となる。
 なお、処理例7のサーバ認証による電子認証は、処理例1から処理例3で説明したオフライン電子認証の全ての下記のケースに適用できる。
 すなわち、QRコードの符号化情報を暗号化しないでドットコードにコード化して複合コードを作成し、オンライン認証に用いてもよい。また、QRコードの符号化情報をQRコードにコード化して、複合コードを作成し、オンライン認証に用いてもよい。また、ドットコードの符号化情報をQRコードにコード化して、複合コードを作成し、オンライン認証に用いてもよい。また、ドットコードの符号化情報をドットコードにコード化して、複合コードを作成し、オンライン認証に用いてもよい。また、QRコードとドットコードの符号化情報をドットコードとQRコードにコード化して、複合コードを作成し、オンライン認証に用いてもよい。また、QRコードとドットコードの符号化情報をQRコードとドットコードにコード化して、複合コードを作成し、オンライン認証に用いてもよい。また、QRコードとドットコードの符号化情報をQRコードにコード化して、複合コードを作成し、オンライン認証に用いてもよい。
 [実施形態8:複合コードパターン]
 上記実施形態1から実施形態7では、QRコードとQRコード中の明色セル(第1の色のセル)中に形成された暗色ドットコード(第2の色のドットコード)および暗色セル(第2の色のセル)中に形成された明色ドットコード(第1の色のドットコード)の少なくとも一方を複合QRコードによる処理が例示された。
 しかし、上記実施形態1から7の処理を複合QRコード以外にも適用可能である。例えば、QRコードに代えて、バーコードを用いてもよい。すなわち、バーコードと、バーコードの暗色パターン間の明色部分に暗色のドットを含むドットコードを形成して複合コードとしてもよい。また、バーコードと、バーコードの暗色パターン部分に明色のドットを含むドットコードを形成して複合コードとしてもよい。
 また、QRコードおよびバーコードの代わりに、単に、英数字、漢字、片仮名、平仮名等の文字列を用いて、複合コードとしてもよい。すなわち、英数字、漢字、片仮名、平仮名等の文字列の暗色パターン間の明色部分に暗色のドットを含むドットコードを形成して複合コードとしてもよい。また、英数字、漢字、片仮名、平仮名等の文字列の暗色パターン中に明色のドットを含むドットコードを形成して複合コードとしてもよい。また、赤外線による撮像装置を用いる場合には、また、英数字、漢字、片仮名、平仮名等の文字列の暗色パターンを通常の赤外線を吸収しないインクで形成し、ドットコードをカーボンブラック等の赤外線を吸収するインクで形成してもよい。そして、文字列の暗色パターンを可視光で読み取り、ドットコードを赤外線で読み取るようにしてもよい。
 そして、バーコードでコード化されたデータを上記実施形態4と同様に、デジタル署名し、ドットコードでコード化すればよい。したがって、読み取り装置は、バーコードあるいは、文字列で提示される情報の正当性を認証することができる。複合コードがバーコードとドットコードで形成される場合には、バーコード読み取り装置とドットコード読み取り装置を使用すればよい。また、文字列とドットコードで形成される場合には、文字列を読み取るOCR(Optical Character Recognition/Reader)装置とドットコード読み取り装置を使用すればよい。
 したがって、このような複合コードは、必ずしもQRコードに限定されるものではなく、次のように定義できる。
 (複合コードの定義)
 複合コードは、識別可能な2以上の色によってパターンがされた第1のコードと、
 前記パターンが有する第1の色と識別可能な1以上のマークが配置された第2のコードと、を備えた複合コードパターンであって、
 前記第2のコードは、前記第1のコードの少なくとも一部に対応する特定情報を含む複合コードパターン、として定義される。
 ここで、識別可能な2以上の色によってパターンがされた第1のコードは、例えば、バーコード、あるいは英数字、漢字、片仮名、平仮名等の文字列である。2以上の色とは、例えば、バーコード、あるいは英数字、漢字、片仮名、平仮名等の文字列の色(1色以上)と、下地の色(媒体面の色)である。1以上のマークが配置された第2のコードとは、上記実施形態1から5に例示したドットコードである。また、第2のコードは、前記第1のコードの少なくとも一部に対応する特定情報を含むとは、実施形態4、5と同様、第2のコードが、第1のコードであるバーコード、あるいは英数字、漢字、片仮名、平仮名等の文字列等で表されるデータをデジタル署名したものであることが例示される。
 [実施形態9:デジタル署名の変形]
 上記実施形態6~8では、例えば、秘密鍵で暗号化した暗号化情報と公開鍵で復号し、復号結果が暗号化前の符号化情報(ハッシュ値等)に一致した場合に、認証が成功したと判定された。しかし、実施形態6~8の処理は、このような処理に限定される訳ではない。例えば、上記のような様々な認証処理、真贋判定処理、改ざん検知処理等において、秘密鍵と公開鍵による認証の他、QRコード等から生成された符号化情報と、符号化情報から作成されたデジタル署名とが所定の関係にあることを判定することで、認証が成功したと判定してもよい。このようなデジタル署名の手順として、Digital Signature Algorithm(DSA)、楕円曲線DSA、ElGamal署名等を用いてもよい。これらのデジタル署名の手順を用いる場合、認証を実行する主体(ユーザ装置UD1、認証サーバ等)は図48のT24のように、符号化情報と復号化情報が一致するか否かを判定する代わりに、デジタル署名の基になる符号化情報と、デジタル署名とが所定の関係にあるか否かが判定される。
 [実施形態10]
 (複合コードの読み取り精度の向上のための課題)
 第1のコードがQRコードの場合では、位置検出パターン(ファインダパターン)でQRコードの領域および向きが定まり、タイミングパターンにより各セルの中央のXY座標値が計算される。しかし、QRコードが形成された媒体面に対してカメラの光軸が垂直でない場合(カメラが媒体に対して傾いている場合)や媒体が湾曲しているような場合では、QRコードが変形して撮像される。その変形の度合いにより、タイミングパターンにより計算される各セルの中央のXY座標値が許容限度を超えてずれて、隣接するセル内の座標値が求まってしまう場合がある。このようなセルの中央のXY座標値のずれが発生すると、セルの明暗の判定が正確に判定できない場合がある。そこで、QRコードでは、アライメントパターンにより、座標値を補正して各セルの中央のXY座標値の精度を高める工夫がなされている。その後、当該座標値の位置や近傍の所定の面積の領域が、明暗のいずれかであるかを判定して、QRコードに格納された数値データを取得する。この場合、中央座標値の精度は、当該セルの明暗が判定できるセル内であればよく、必ずしもセルの中央でなくてもよいレベルである。しかし、第1のコードのセルの中央の座標値を基に、セル内に形成された第2のコードのマークの配置で数値データを取得する場合には、当該マークの配置が適正に認識できる程度の精度が望まれる。そこで、精度を高めるために、第1のコードのセルの中央の座標値を所定の方法で補正するか、別途、第2のコードのマークの形状や配置から求めることが望ましい。
 以下に、第2のコードのマークとしてドットを使用した場合のセル中央座標値の計算方法と数値データを取得する過程を説明する。図61は、セル内の情報ドットの配置候補位置を図62に示すように8か所配置した実施例である。図62は、1つのセル内のドットの配置位置を例示する図である。8か所のドットを配置するか否かで8bitの数値データを定義できる。ドットの配置は、同心円上に概ね等間隔(図では、45度毎)に配置されているため、配置位置の精度を確保するためには、2400dpi程度以上の高解像度の印刷機で印刷することにする。図61は、複合コードの一部を示した実施例であり、明色セルのみに情報ドットを配置してドットコードを形成している。なお、図示しないが情報ドットを暗色セルに配置してもよいし、両方に情報ドットを配置してもよい。図63は、QRコードの仕様にしたがって求めたセルの中央の座標位置が、セルの本来の中央からずれる画像の例である。図63の例では、十印で示した位置が第1のコード(図ではQRコード)でセルの中央として求められた座標位置であるが、セルの中央からずれていることが分かる。本実施形態では、このずれた位置を×印で示したセルの適正な中央座標値に補正する方法を説明する。
 (セル中央座標値の計算)
 1つのセルにおいて、P(X,Y)の十印から上下方向にセルの明暗が変化する境界を検索し、上下方向2個の境界座標値B1U(X,Y1U)とB1D(X,Y1D)を求める。ここで、Y座標の差分値Y1U-Y1Dは、第1のコードで取得したセルサイズと同程度であることから、上下方向1個の明色セルであることが分かり、X1C=X,Y1C=Y1D+(Y1U-Y1D)/2により、上下境界間の中心位置B1C(X1C,Y1C)が求まる。さらに、B1Cを起点に左右方向2個の境界座標値をB1L(X1L,Y1C)とB1R(X1R,Y1C)が求まる。ここで、X1R-X1Lは、第1のコードで取得したセルサイズと同程度であることから、左右方向1個の明色セルであることが分かり、X’1C=X1L+(X1R-X1L)/2とY’1C=Y1Cにより、左右境界間の中心位置B’1C(X’1C,Y’1C)が求まり、×印で示されたセルの中央座標値P’(X’1C,Y’1C)が求まる。
 次に、他のセルにおいて、P(X,Y)の十印から上下方向にセルの明暗が変化する境界を検索し、上下方向2個の境界座標値をB2U(X,Y2U)とB2D(X,Y2D)を求める。ここで、Y座標の差分値Y2U-Y2Dは、第1のコードで取得したセルサイズと同程度であることから、上下方向には1個の明色セルであることが分かり、X2C=XとY2C=Y2D+(Y2U-Y2D)/2により、上下境界間の中心位置B2C(X2C,Y2C)が求まる。さらに、B2Cを起点に左右方向2個の境界座標値をB2L(X2L,Y2C)とB2R(X2R,Y2C)を求める。ここで、X2R-X2Lは、第1のコードで取得したセルサイズの2倍程度であることから、左右方向には2個の明色セルであることが分かり、線形補間してX’2C=X2L+(X2R-X2L)×1/4とY’2C=Y2Cにより、左右境界間の中心位置B’2C(X’2C,Y’2C)が求まり、×印で示されたセルの中央座標値P’(X’2C,Y’2C)が求まる。また、同様に線形補間してX’3C=X2L+(X2R-X2L)×3/4とY’3C=Y’2Cにより、P’(X’3C,Y3C)を求めてもよい。なお、前述と同様に、P(X,Y)を基にP’(X’3C,Y3C)を求めてもよい。さらに、P’からP’についても、前述と同様な方法で求めることができる。
 (ドットの抽出と数値データの取得)
 読み取り装置がドットを抽出しドットの中心点を求め、ドットコードの数値データを取得する方法を図64から図72で説明する。図64は、第2のコードの向き(第2のコードの規則として、向きは第1のコードと同一のものとしてもよい)と補正されたセル中央位置P0からの距離と方向で設定される仮想点P1~P8を中心としたバウンディングボックスをドットのサイズと同程度で示した図である。この仮想点は第2のコードの規則にしたがった情報ドットの配置候補位置である。読み取り装置は、バウンディングボックス内にドットの中心座標値が含まれるか否かを判定して数値データを取得する。なお、バウンディングボックスの大きさは、隣接するバウンディングボックスと重複しなければ、ドットのサイズよりも大きくしてもよい。印刷精度や撮影環境等が悪く、撮像された画像のドットの中心座標値の精度が悪くても認識可能となる。ただし、大きくなった分だけ、インクの飛び等によるノイズ(エラー印刷)の影響を受ける可能性が高くなる。もちろん、取得するドットの中心座標値の精度が十分確保される場合は、バウンディングボックスの大きさは、ドットのサイズよりも小さくしてもよい。
 図65は、例えば、上部ドット配置候補位置を先頭に右回りに桁を上げて2進数で01101001を定義したドットコードが形成された明色セルの例である。図66、図67は、C-MOSセンサー等により、当該セルを撮像した画像の例である。撮像とは、フレームバッファ等の記憶媒体に撮影された画像が記録されたこと、または記録する動作を言う。本画像は、説明を簡略化するために明暗の65段階(明色、黒色を含む)の濃淡で示している。通常は、濃淡のみで撮像する場合、8bitつまり256段階で記録される場合が多い。カラーでは、R、G、B各8bitで1,670万色で撮像される場合が多い。図66~図69で、縦軸に付された数字1~15は、画像の画素の行(走査線)を示す番号である。
 読み取り装置は、本撮像画像から、ドットを抽出する場合、所定の絶対閾値を下回る濃淡値(例えば、255は白色、0は黒色とした場合に絶対閾値を60とすれば、60以下の濃淡値)の部分をドットであると判定してもよい。その場合、明色セル毎に明色セルのドットを除く所定の範囲の濃淡値の平均値から絶対閾値を設定するのが望ましい。すなわち、明色領域の濃淡値が低い場合は閾値を下げ、濃淡値が高い場合は閾値を上げるように可変にすればよい。その絶対閾値は、明色セルのドットを除く所定の範囲の濃淡値の平均値の例えば、20%~40%とするのが望ましい。
 図70は、画像から得られる濃淡値と絶対閾値との関係から、画像を2値化する処理例である。図で、縦軸は、例えば、図66の画像中の下から4行目の画素の行(走査線12)に対応する画素の明暗値(グレースケール値)であり、横軸は、水平方向に並んだ画素位置を例示する。また、図70で、○印に番号を付した数字は、各画素を識別する符号である。図70では、明色部分の平均値が200でその30%の60(一点鎖線)を絶対閾値とすると、画素(4)と(10)、(11)が2値化されて暗色となり、図69の下から第4行目の画素(ピクセル)のようにドットとして判定される。
 一方、図67に示すように、走査線方向に濃淡値を取得して、閾値を明色部分からドット部分への濃淡値の変化率を相対閾値として使用してもよい。当該変化率を顕著にするため、撮像した画像の濃淡値を比較するピクセルを2~3個程度先のピクセルの濃淡値と比較するのが望ましい。その変化率は、明色のピクセルの濃淡値に対してドットを形成するピクセルの濃淡値を40%~60%程度以下として相対閾値を設定するのが望ましい。
 図70では、走査線12において、比較するピクセル間で1ピクセル空けて、明色領域のピクセルの濃淡値に変化率α=0.5(50%)を乗じた相対閾値を設定し、走査線方向で相対閾値を下回る濃淡値のピクセルの場合は、(1)(0.5×255=127.5)と(3)(102)、(2)(0.5×255=127.5)と(4)(0)、(7)(0.5×255=127.5)と(5)(102)を比較して(3)、(4)、(5)が黒色で2値化され、(8)(0.5×255=127.5)と(10)(51)、(9)(0.5×255=127.5)と(11)(0)を比較して(10)、(11)が黒色で2値化されて、図68のようにドットとして判定される。以上のようにして、グレースケールのピクセルが黒色で2値化される。なお、黒色で2値化されたピクセルが発生した後から走査線方向に濃淡値が変化率を下回るピクセルが連続する場合は、当該ピクセルは黒色で2値化される。対象とするピクセルの濃淡値をBiとすると、i)αBi-n>BかつB<αBi+n、ii)αBi-n>BまたはB<αBi+nの2通りの判定方法がある。nは、対象ピクセルとn個離れたピクセルと比較することを示している。i)は対象とするピクセルBがドットであることを走査線上の左右の両方から相対閾値を満足するものであり、少し狭くドットとして判定される。一方、ii)は対象とするピクセルBがドットであることを走査線上の左右のいずれかからの相対閾値(変化率)を満足するものであり、少し広くドットとして判定される。その結果、図68は、閾値を甘くした場合(絶対閾値を高めか、相対閾値を小さくした場合)の結果である。図69は、閾値を厳しく場合(絶対閾値を低め、相対閾値を大きくした場合)の結果である。いずれの場合であっても、図71、図72のように、情報ドットの中心座標値がバウンディングボックス内に納まっており、読み取り装置(実施形態1から6参照)は、ドットコードで定義された数値データを取得できる。
 なお、暗色(または明色)のドットの中心座標値D(Xc,Yc)は、2値化された暗色(または明色)のピクセルから形成されるドットの中心から計算され、暗色(または明色)に2値化されたn個(i=1~n)のピクセルの座標値をD(X,Y)とすると、X=Σi=1~n/n、Yc=Σi=1~n/nで求まる。本計算は、他の実施例のドットの中心座標値の計算にも用いられてよい。
 (基準ドットを暗色セルに配置した明色セル中央座標値の計算)
 第1のコードで計算されたセル中央座標値を使用しないで、暗色セルに配置した明色の基準ドットから直接的にセル中央座標値を計算する方法を図73、図74で説明する。図73は、図62と同様にセル内の情報ドットの配置候補位置を設定した実施例である。図73においても、図62に示したように、明色セルのみに情報ドットが配置される。ただし、図73では、暗色セルのみに基準ドットを配置してドットコードを形成している。図73では、図示しないが情報ドットを暗色セルに、基準ドットを明色セルに配置してもよい。図73で、暗色セルに配置した明色の基準ドットは、第1のコードから計算された暗色セル内の中央座標値周辺の連続する暗色領域から明色ドットを容易に検索できる。第1のコードから計算された暗色セル内の中央座標値を使用しなくても、暗色領域が連続する領域に明色ドットが存在するかを検索してもよい。
 図74は、第1のコードによってセルの中央として求められた座標位置がセルの本来の中央からずれている画像の例である。図74では、十印で示した位置が第1のコードによってセルの中央として求められた座標位置であるが、セルの中央からずれていることが分かる。このずれた位置から、×印で示したセルの適正な中央座標値を求める方法を以下、説明する。
 先ず、読み取り装置は、暗色セルに配置した基準ドットの位置を検索する。検索の方法としては、読み取り装置は、第1のコードで求められた暗色セルの中央座標値を起点に周辺の暗色セル内から所定の閾値を用いて、基準ドットの濃淡度の高い領域を検索し、当該領域の中心位置を求め基準ドットの中心座標値としてもよい。次に、基準ドットの中心位置同士を上下・左右方向に仮想の直線で繋いで、その交点の座標を明色セルの中央座標値とする。交点の存在しない明色セルには、他の上下・左右方向で取得した交点から、内挿または外挿して求めればよい。
 (基準ドットを明色セルに配置したセル中央座標値の計算)
 第2のコードで明色セルの中央に基準ドットを配置し、その基準ドットを検索してセルの中央座標値を計算する方法を図75から図78で説明する。図76は、図62と同様にセル内の情報ドットの配置候補位置を設定し、さらに中央に基準ドットを配置した実施例である。図75は、複合コードの一部を示した実施例であり、明色セルのみに基準ドットと情報ドットを配置してドットコードを形成している。図示しないが基準ドットと情報ドットを暗色セルに配置してもよい。この基準ドットを認識することにより、基準ドットから距離および方向で配置されて数値データが定義される情報ドットの配置をより正確に認識することができる。
 図77は、第1のコードによってセルの中央として求められた座標位置がセルの本来の中央からずれている画像の例である。図77では、十印で示した位置が第1のコードでセルの中央として求められた座標位置であるが、セルの中央からずれていることが分かる。このずれた位置から、×印で示したセルの適正な中央座標値を求める方法を以下、説明する。
 先ず、読み取り装置は、明色セルに配置した基準ドットの位置を検索する。検索の方法としては、読み取り装置は、選択した第1のコードで求められた明色セルの中央座標値近傍のドットが基準ドットであるかを他の明色セルに配置されたドットとの配置関係から判定する。つまり、読み取り装置は、当該ドットから直線状に所定の間隔で配置されているドットであるか否かを判定すればよい。この条件を満足できない場合は、読み取り装置は、次に近傍のドットで上記条件を満たすかの判定を繰り返し、基準ドットを認識する。一方、読み取り装置は、図63で説明した方法でセル中央座標値を計算し、その座標値に最も近いドットを基準ドットしてもよい。なお、基準ドットを、情報ドットと大きさや形状、色、配置パターン(基準ドットは複数であってもよい)を異ならせることにより、上記のようなセル中心座標値の補正を掛けなくても、読み取り装置は、基準ドットを容易に認識できる。
 なお、上記で示した基準ドットは必ずしも、セルの中央に配置されたドットでなくても、基準ドットとして判別できれば、セル内の何処に配置してもよい。図78は、第2のコードの向き(第2のコードの規則として、向きは第1のコードと同一のもととしてもよい)と基準ドットの中心位置P0からの距離と方向で設定される仮想点P1~P8を中心とした円形のバウンディングボックスをドットのサイズと同程度で示した図である。この仮想点は第2のコードの規則にしたがった情報ドットの配置候補位置である。ここでは、読み取り装置は、バウンディングボックス内にドットの中心座標値が含まれるか否かを判定して数値データを取得する。なお、バウンディングボックスの仕様は図64と同様である。
 (基準ドットを明色セルと暗色セルに配置したセル中央座標値の計算)
 第2のコードで明色セルと暗色セルの中央に基準ドットを配置し、その基準ドットを検索してセルの中央座標値を計算する方法を図79および図80で説明する。図79は、複合コードの一部を示した実施例であり、明色セルと暗色セルに基準ドットを、明色セルのみに情報ドットを配置してドットコードを形成している。図示しないが情報ドットを暗色セルに配置してもよいし、両方に情報ドットを配置してもよい。暗色セルに配置した明色の基準ドットについては、読み取り装置は、第1のコードから計算された暗色セル内の中央座標値周辺の連続する暗色領域から明色ドットを容易に検索できる。読み取り装置は、第1のコードから計算された暗色セル内の中央座標値を使用しなくても、暗色領域が連続する領域に明色ドットが存在するかを検索すればよい。この基準ドットを認識することにより、基準ドットの中心位置からの距離および方向で配置されて数値データが定義される情報ドットの配置をより正確に認識することができる。
 図80は、第1のコードによってセルの中央として求められた座標位置がセルの本来の中央からずれている画像の例である。図80では、十印で示した位置が第1のコードでセルの中央として求められた座標位置であるが、セルの中央からずれていることが分かる。このずれた位置から、×印で示したセルの適正な中央座標値を求める方法を以下、説明する。読み取り装置は、先ず、暗色セルに配置した基準ドットの位置を検索する。検索の方法としては、読み取り装置は、第1のコードで求められた暗色セルの中央座標値を起点に周辺の暗色セル内から所定の閾値を用いて、基準ドットの濃淡度の高い領域を検索し、当該領域の中心位置を求め基準ドットの中心座標値としてもよい。次に、基準ドットの中心位置同士を上下・左右方向に仮想の直線で繋いで、その交点の座標を明色セルの中央座標値とする。交点の存在しない明色セルには、他の上下・左右方向で取得した交点から、内挿または外挿して求めればよい。読み取り装置は、この明色セルの中央座標値近傍のドットを明色セルに配置した基準ドットの位置とする。なお、上記で示した基準ドットは必ずしも、セルの中央に配置されたドットでなくても、基準ドットとして判別できれば、セル内の何処に配置してもよい。
 (基準ドットを明色セルに配置したセル中央座標値の計算(情報分割セルの場合))
 第2のコードで明色セルの中央に基準ドットを配置し、その基準ドットを検索してセルの中央座標値を計算する方法の他の例を図81から84で説明する。図82は、明色セルを縦横4分割して16個の分割セルを生成し、中央の分割セル4個を除いて情報分割セルの配置候補位置を12か所に配置し、さらに明色セルの中央に基準ドットを配置した実施例である。ここで、図82のように、明色のセル(または暗色のセル)を分割し、基準ドットに接触しない、分割された領域(分割セルともいう)に形成される暗色(暗色のセルに対しては明色)の領域により情報を定義する場合の当該分割された暗色(暗色のセルに対しては明色)の領域を情報分割セルという。
 明色セルに含まれる暗色領域を33%以下にした場合に配置できる情報分割セルの数は、(16/3)-1(基準ドット分)=4個であり、1個の明色セルに配置できる情報分割セル数は最大4個であり、定義できる数値データの情報量は、1212121212=794通りの組み合わせがある。つまり、29.63であり、9bit以上の数値データを定義できる。基準ドットは、中央に配置されているため、配置位置の精度を確保するためには、1200dpi程度以上の高解像度の印刷機で印刷することにする。
 図81は、複合コードの一部を示した実施例であり、明色セルのみに基準ドットと情報分割セルを配置して分割セルコードを形成している。図示しないが基準ドットと情報分割セルを暗色セルに配置してもよい。この基準ドットを認識することにより、基準ドットの中心位置からの距離および方向で配置されて数値データが定義される情報分割セルの配置を正確に認識することができる。
 図83は、第1のコードによってセルの中央として求められた座標位置がセルの本来の中央からずれている画像の例である。図83では、十印で示した位置が第1のコードでセルの中央として求められた座標位置であるが、セルの中央からずれていることが分かる。このずれた位置から、×印で示したセルの適正な中央座標値を求める方法は、図77で説明した通りである。
 図84は、第2のコードの向き(第2のコードの規則として、向きは第1のコードと同一のものとしてもよい)と基準ドットの中心位置P0からの距離と方向で設定される仮想点P1~P8を中心とした矩形のバウンディングボックスを情報分割セルのサイズの50%程度で示した図である。この仮想点は第2のコードの規則にしたがった情報分割セルの配置候補位置である。ここでは、読み取り装置は、バウンディングボックス内に情報分割セルで示される所定比率の暗色領域が含まれるか否かを判定して数値データを取得する。暗色領域の判定方法は、図66~図70で説明したものと同様である。読み取り装置は、絶対閾値を設定し、バウンディングボックスを形成するピクセル数に対して、絶対閾値を下回る濃淡値のピクセル数が所定比率を超えていれば、情報分割セルとして判別する。印刷精度による基準ドットおよび情報分割セルの大きさに対して、20~30%程度の印刷ずれを考慮して、所定比率は50~75%程度以上が望ましい。なお、1個の情報分割セルが隣接するバウンディングボックスに含まれないように、読み取り装置は、バウンディングボックス間を所定距離離れるようにバウンディングボックスの大きさを設定することにする。本実施例では、情報分割セルのサイズの50%で設定しているが、複合コード撮影時のカメラの解像度等を考慮し設定することが望ましい。高解像度であれば、読み取り装置は、バウンディングボックスのサイズを認識時に可変にして、情報分割セルの認識率を高めてもよい。
 (基準分割セルを明色セルに配置したセル中央座標値の計算)
 第2のコードで明色セルの中央に基準分割セルを配置し、その基準分割セルを検索してセルの中央座標値を計算する方法を図85から図88で説明する。図86は、明色セルを縦横5分割して25個の分割セルを生成し、中央の分割セル9個を除いて情報分割セルの配置候補位置を16か所配置し、さらに中央に基準分割セルを配置した実施例である。図86のように、明色セル(または暗色のセル)を所定数に分割し、その分割された領域のいずれかに形成された暗色(暗色のセルに対しては明色)の領域により基準点を定義する場合の当該基準点を定義する分割された暗色(暗色のセルに対しては明色)の領域を基準分割セルという。同様に、セルを分割し他領域により情報を定義する場合の当該領域を情報分割セルという。
 明色セルに含まれる暗色領域を33%以下にした場合に配置できる情報分割セルの数は、(25/3)-1(基準ドット分)=7個であり、1個の明色セルに配置できる情報分割セル数は最大7個であり、定義できる数値データの情報量は、1616161616161616=26,333通りの組み合わせがある。つまり、214.68であり、14bit以上の数値データを定義できる。また、明色セルに含まれる暗色領域を20%以下にした場合に配置できる情報分割セルの数は、(25/5)-1(基準ドット分)=4個であり、1個の明色セルに配置できる情報分割セル数は、最大4個であり、定義できる数値データの情報量は、1616161616=2,517通りの組み合わせがある。つまり、211.30であり、11bit以上の数値データを定義できる。なお、図45に示したように、1つのセルを5×5pixelで印刷することは、600dpiのプリンタでも印刷可能である。
 図85は、複合コードの一部を示した実施例であり、明色セルのみに基準分割セルと情報分割セルを配置して分割セルコードを形成している。図示しないが基準分割セルと情報分割セルを暗色セルに配置してもよい。読み取り装置は、この基準分割セルを認識することにより、基準分割セルの中心位置からの距離および方向で配置されて数値データが定義される情報分割セルの配置を正確に認識することができる。
 図87は、第1のコードによってセルの中央として求められた座標位置がセルの本来の中央からずれている画像の例である。図87では、十印で示した位置が第1のコードでセルの中央として求められた座標位置であるが、セルの中央からずれていることが分かる。このずれた位置から、×印で示したセルの適正な中央座標値を求める方法を以下に説明する。読み取り装置は、先ず、明色セルに配置した基準分割セルの位置を検索する。検索の方法としては、読み取り装置は、選択した第1のコードで求められた明色セルの中央座標値近傍の分割セルが基準分割セルであるかを他の明色セルに配置された分割セルとの配置関係から判定する。つまり、読み取り装置は、当該分割セルから直線状に所定の間隔で配置されている分割セルであるか否かを判定すればよい。この条件を満足できない場合は、読み取り装置は、次に近傍の分割セルで上記条件を満たすかの判定を繰り返し、基準分割セルを認識する。
 一方、図66で説明した方法でセル中央座標値を計算し、その座標値に最も近いセルを基準分割セルとしてもよい。
 図88は、第2のコードの向き(第2のコードの規則として、向きは第1のコードと同一のものとしてもよい)と基準分割セルの中心位置P0からの距離と方向で設定される仮想点P1~P8を中心とした矩形のバウンディングボックスを情報分割セルのサイズの50%程度で示した図である。この仮想点は第2のコードの規則にしたがった情報分割セルの配置候補位置である。ここでは、読み取り装置は、バウンディングボックス内に情報分割セルで示される所定比率の暗色領域が含まれるか否かを判定して数値データを取得する。暗色領域の判定方法は、図66で説明したものと同様である。読み取り装置は、絶対閾値を設定し、バウンディングボックスを形成するピクセル数に対して、絶対閾値を下回る濃淡値のピクセル数が所定比率を超えていれば、情報分割セルとして判別する。読み取り装置は、印刷精度による基準ドットおよび情報分割セルの大きさに対して、20~30%程度の印刷ずれを考慮して、所定比率は50~75%程度以上が望ましい。なお、読み取り装置は、1個の情報分割セルが隣接するバウンディングボックスに含まれないように、バウンディングボックス間を所定距離離れるようにバウンディングボックスの大きさを設定する。本実施例では、読み取り装置は、情報分割セルのサイズの50%で設定しているが、複合コード撮影時のカメラの解像度等を考慮し設定することが望ましい。読み取り装置は、取得する画像が十分に高解像度であれば、バウンディングボックスのサイズを認識時に可変にして、情報分割セルの認識率を高めてもよい。
 (基準分割セルを暗色セルに配置した明色セル中央座標値の計算)
 第1のコードで計算されたセル中央座標値を使用しないで、暗色セルに配置した明色の基準分割セルから直接的にセル中央座標値を計算する方法を図89から図92で説明する。図90は、明色セルを縦横5分割して25個の分割セルを生成し、中央の分割セル1個を除いて情報分割セルの配置候補を24か所配置した実施例である。明色セルに含まれる暗色領域を33%以下にした場合に配置できる情報分割セルの数は、25/3=8個であり、1個の明色セルに配置できる情報分割セル数は、最大8個であり、定義できる数値データの情報量は、242424242424242424=1,271,626通りの組み合わせがある。つまり、220.28であり、20bit以上の数値データを定義できる。また、明色セルに含まれる暗色領域を20%以下にした場合に配置できる情報分割セルの数は、25/5=5個であり、1個の明色セルに配置できる情報分割セル数は、最大5個であり、定義できる数値データの情報量は、242424242424=55,455通りの組み合わせがある。つまり、215.76であり、15bit以上の数値データを定義できる。なお、図45に示したように、600dpiのプリンタで印刷可能である。なお、600dpiよりも高解像度の印刷機で印刷できることは言うまでもない。
 図89は、複合コードの一部を示した実施例であり、明色セルのみに情報分割セル、暗色セルのみに基準分割セルを配置して分割セルコードを形成している。図示しないが情報分割セルを暗色セルに、基準分割セルを明色セルに配置してもよい。読み取り装置は、暗色セルに配置した明色の基準分割セルを第1のコードから計算された暗色セル内の中央座標値周辺の連続する暗色領域から明色分割セルを容易に検索できる。読み取り装置は、第1のコードから計算された暗色セル内の中央座標値を使用しなくても、暗色領域が連続する領域に明色分割セルが存在するかを検索してもよい。
 図91は、第1のコードによってセルの中央として求められた座標位置がセルの本来の中央からずれている画像の例である。図91では、十印で示した位置が第1のコードでセルの中央として求められた座標位置であるが、セルの中央からずれていることが分かる。このずれた位置から、×印で示したセルの適正な中央座標値を求める方法を以下、説明する。読み取り装置は、先ず、暗色セルに配置した基準分割セルの位置を検索する。検索の方法としては、読み取り装置は、第1のコードで求められた暗色セルの中央座標値を起点に周辺の暗色セル内から所定の閾値を用いて、基準分割セルの濃淡度の高い領域を検索し、当該領域の中心位置を求め基準分割セルの中心座標値としてもよい。次に、読み取り装置は、基準分割セルの中心位置同士を上下・左右方向に仮想の直線で繋いで、その交点の座標値を明色セルの中央座標値とする。読み取り装置は、交点の存在しない明色セルには、他の上下・左右方向で取得した交点から、内挿または外挿して求めればよい。
 図92は、第2のコードの向き(第2のコードの規則として、向きは第1のコードと同一のものとしてもよい)とセル中央位置P0からの距離と方向で設定される仮想点P1~P24を中心とした矩形のバウンディングボックスを情報分割セルのサイズの50%程度で示した図である。この仮想点は第2のコードの規則にしたがった情報分割セルの配置候補位置である。読み取り装置は、バウンディングボックス内に情報分割セルで示される所定率の暗色領域が含まれるか否かを判定して数値データを取得する。暗色領域の判定方法とバウンディングボックスの仕様は、図86から図88で説明した通りである。なお、明色セル中央にも暗色の基準分割セルを配置してもよい。読み取り装置は、暗色セルに配置した基準分割セルにより求まった明色セルの中央座標値近傍の暗色の分割セルを明色セルに配置した基準分割セルの位置として、基準分割セルの中心位置からの距離と方向で設定される仮想点P1~P24を中心とした矩形のバウンディングボックスとして数値データを取得してもよい。その場合は、明色セル内に配置できる情報分割セル数が1個減り、情報量が減ることになる。
 本実施例では、1セルで多量の数値データが定義することができるが、セル中央の座標値が正確に求められることの他、所定のカメラの撮像解像度、印刷精度を確保しなければならない。それらが十分ではない場合は、誤認の発生率が高くなる。それを解消するには誤り訂正符号を多量に形成する必要があるが、大幅に情報量が減ることになる。図93では、図90の情報分割セル候補配置位置を上下左右に隣り合わないように12か所配置した実施例である。これにより、図94のバウンディングボックスで、本来、存在しない位置に情報分割セルを認識した場合は、エラーとする。エラーを認識できれば、誤り訂正符号が少なくて済み、データ格納量を増加することができる。さらに、図95~図102のように、バウンディングボックスを移動して、本来、分割セルが存在しない位置に分割セルを認識しなくなれば、正しくバウンディングボックスが設定されたことになり、そこで数値データを取得すればよい。ここで得られたバウンディングボックスの移動量は他のセルでも使用できる。なお、図95~図102のバウンディングボックスの移動は、さらに段階的に移動させてもよい。図90の情報分割セル候補配置位置は、情報分割セル候補配置位置が隣接しなければどのような配置でも構わない。
 (複合コード生成処理)
 実施形態10における複合コード生成処理は、セルに基準点が設定される点を除いて、実施形態1から実施形態9と同様である。したがって、実施形態10における複合コード生成処理は、図47、図49、図51、図53、図55、図57、図59で例示した処理がそのまま踏襲される。ただし、これらの処理において、管理サーバMS1等は、望ましいセル(すなわち、基準点を設定すべきセル)に基準点を設定すればよい。管理サーバMS1等は、例えば、第2のコードの生成時に、第2のコード内に基準点を含めればよい。
 <バウンディングボックスの設定>
 セル中央座標値が正確に求まると、数値データを取得するためのバウンディングボックスを正確に設定する必要がある。図64のように、バウンディングボックスの中心となる仮想点P1~P8は、セル中央位置P0からの距離と方向による幾何学的配置関係により定義される。この幾何学的配置関係は、複合コード読取り装置の記憶媒体や第2のコードから数値データを取得するソフトウェアに記録される。一方、図103では、図61の複合コードの左上の明色セルに示したように、所定の位置のセル内に複数の基準ドットでセル中央位置P0と仮想点P1~P8による幾何学的配置関係(基準パターン)を形成して認識してもよい。これにより、複合コードをカメラで撮像した画像から直接、基準パターンを取得することができ、より正確にバウンディングボックスを設定でき、数値データを取得することができる。図示しないが、基準パターンは暗色セル(明色基準ドット)でも明暗色の両方に形成してもよい。第1のコードがQRコードの場合では、位置検出パターン(ファインダパターン)やタイミングパターン、アライメントパターン、フォーマット情報が形成される所定のセルに配置してもよい。ここで、セルサイズが0.3×0.3mmの場合、ドットの直径を0.045mmとすると、ドットがセル内に占める割合は、π×(0.045/2)×9/(0.3×0.3)=0.159(15.9%)となり20%以下であり、QRコードの読取りには全く支障がない。しかし、QRコード最小のセルサイズの0.169×0.169mmの場合では、ドットがセル内に占める割合は33%を超えてしまい、QRコードの読取りに支障をきたす。その場合は、基準パターンを上下方向の仮想点と斜め方向の仮想点に分けて、図104のように、図74の複合コードの右上の1段目と2段目の暗色セルにそれぞれ5個の基準ドットにより2種のパターンを形成すればよい。これにより、ドットがセル内に占める割合は、π×(0.045/2)×5/(0.169×0.169)=0.278(27.8%)となり33%以下であり、QRコードの読取りには支障がない。この2種のパターンを合成して基準パターンとして使用すればよい。もちろん、基準パターンを3種以上に分解して複数のセルにパターンを形成してもよいし、暗色セル(明色基準ドット)または明色セル(暗色基準ドット)の少なくともいずれかに配置してもよい。これらの複数の異なるパターンをそれぞれ独立した基準パターンとして、それぞれに対応する異なる配置パターンの情報ドットが形成されたセルに対して、対応するバウンディングボックスを設定して数値データを取得してもよい。
 図105では、図77の複合コードに基準パターンを形成した実施例であるが、情報ドットが配置される明色セルには中央にドットが配置されていないため、基準パターンを容易に認識できる。また、明色の基準ドットが中央に配置される暗色セルに基準パターンを形成する場合、基準ドットの数で基準パターンを容易に認識できる。なお、基準パターンは暗色セル(明色基準ドット)でも明暗色の両方に形成してもよい。
 図106では、図80の複合コードの明色および/または暗色のセルの所定間隔毎に基準パターンを複数配置した実施例である。これにより、QRコードが変形して撮像されて領域毎に変形の度合いが変化しても、撮像した複数の基準パターンで、その周辺のセルに形成される第2のコードのバウンディングボックスを設定すれば、より正確に数値データを取得することができる。本実施例では、数値データを定義する情報ドットは、セルの中央位置P0が正確に取得できることから中央の基準ドットを配置していないため、基準パターンを容易に認識できる。基準ドットを配置する場合は、予め定められた配置のセルに形成すればよい。なお、図61~図78および図79~図92のいずれの実施例でもセルの所定間隔毎に基準パターンを複数配置してもよい。
 図107では、図83の複合コードに周辺が暗色セル(または明色セル)で囲まれた暗色セル(または明色セル)内に、図84の中心位置がP0となる明色(または暗色)の基準ドットと、中心位置がP2、P5、P8、P11となる明色(または暗色)の基準分割セルによる基準パターンを形成した実施例である。P2、P5、P8、P11の中心座標値を取得することによりP1、P3、P4、P6、P7、P9、P10、P12の中心位置を補間計算して、仮想点P1~P12を中心とするバウンディングボックスが設定できる。また、中央の基準ドットを基準分割セルに代えて、図87の複合コードにおいて、同様に基準パターンを形成してもよい。さらに、この基準パターンを形成する基準ドットおよび/または基準分割セルの大きさを同一または認識し易い大きさとし、間隔のみを所定倍数を掛けて形成(相似拡大)し、それらの中心座標値を取得した後に、当該間隔を所定数で除すること(相似縮小)により適切な配置の基準パターンを取得して、セル中央位置からの距離と方向によるバウンディングボックスの中心となる仮想点との幾何学的配置関係を高精度で取得することができる。なお、図61~図78、図89から図92のいずれの実施例でも同様な形態が可能であることは言うまでもない。
 図108では、図91の復号パターンの右上の1段目と2段目の暗色セルにそれぞれ5個の明色の基準分割セルにより2種のパターンを形成した実施例である。右上1段目のパターンには中央と上下・左右方向に基準分割セルが形成され、右上2段目のパターンには中央と斜め方向に基準分割セルが形成されている。先ず、右上1段目のパターンの中央と上下方向に形成された基準分割セルに対しては、図70のように、走査線方向に2値化処理を行い、左右方向に形成された基準分割セルに対しては、垂直方向に2値化処理を行い、図92に示すP10、P14、P18、P22の基準分割セルの中心座標値を求めた後、中央の基準分割セルの中心座標値P0から十字方向の4個の基準分割セルの中心座標値に向かって直交する2本の直線を2等分するP0を通る2本の斜線によって4方向を求める。次に、右上2段目のパターンの中央と斜め方向に形成された基準分割セルに対しては、中央の基準分割セルの中心座標値P0から、右上1段目のパターンで求められた斜め4方向で2値化処理を行い、P12、P16、P20、P24それぞれの基準分割セルの中心座標値を求める。最後に、この2種のパターンを合成して、P0およびP10、P12、P14、P16、P18、P20、P22、P24を基に補間して、P1~P8、P9、P11、P13、P15、P17、P19、P21、P23を求めて基準パターンとして、バウンディングボックスを設定し数値データを取得すればよい。なお、上記の2値化処理はどのような方法を用いてもよいし、基準パターンを形成するパターンは暗色セル(明色基準分割セル)または明色セル(暗色基準分割セル)の少なくともいずれかに配置してもよい。ここで、基準パターンを形成するパターンの基準分割セルがセル内に占める割合は、セルサイズが0.212×0.212mmの場合、分割セルの辺長を0.045mmとすると、0.045×5/(0.212×0.212)=0.225(22.5%)となり33%以下であり、QRコードの読取りには支障がない。
 以上、QRコードが形成された媒体面に対してカメラの光軸が垂直でない場合(カメラが媒体に対して傾いている場合)や媒体が湾曲しているような場合では、QRコードが変形して撮像されるため、補正はしているものの、正確なセル中央の座標値を取得できないため、正確なセル中央の座標値の取得とセル内に形成された基準パターンにより、セルに定義された数値データを誤認なく取得する方法を説明した。ここで、図74、図80、図91、または他の方法では、基準ドットまたは基準分割セルにより格子線を描くことができる。この格子線で囲まれた領域は、当該位置近傍のセルの大きさ・形状を表しており、セルの変形状況を、セル中央位置からの距離と方向によるバウンディングボックスの中心となる仮想点との幾何学的配置関係に反映させてバウンディングボックスの配置を補正し、当該位置近傍の情報ドットや情報分割セルの認識に用いてもよい。これにより、QRコードが変形して撮像されて領域毎に変形の度合いが変化しても、領域毎に格子の形状による補正であり、複合コードに基準パターンを形成することなく、複合コード読取り装置の記憶媒体や第2のコードから数値データを取得するソフトウェアに記録され、幾何学的配置関係を用いて補正すればよい。なお、格子線によるバウンディングボックスの配置の補正は、他の実施例と組み合わせて使用してもよい。さらに、格子線を生成する手段として、明暗のセルの境界を検出して、その境界に沿って格子線を引いてもよい。ただし、印刷の精度やQRコードを撮影した際の撮像画像が回転・変形していると、明暗を示すピクセルの境界部分が凸凹になってしまうため、それらを平滑化または平均化して格子線を形成した方が望ましい。
 図示しないが、基準点を示すマークの形状、大きさ、色、向き、配置パターンの少なくともいずれか1つにより、基準点を示すマークが形成されたセルに数値データが定義されてもよい。
 <第2のコードの向きの設定>
 第2のコードの数値データを取得する際には、第1のコードの向きを使用することを前提にした実施例を示してきた。しかし、QRコードが形成された媒体面に対してカメラの光軸が垂直でない場合(カメラが媒体に対して傾いている場合)や媒体が湾曲しているような場合では、QRコードが変形して撮像されて領域毎に変形の度合いが変化し、セル毎の向きも変化する可能性がある。また、第1のコードとは無関係に、第2のコードのみを取得する場合もある。そこで、第2のコード自身で向きを設定する実施例を説明する。
 図109は、図74の複合コードの所定の基準ドットの上方にディレクションドットを加え、第2のコードの向きを設定した実施例である。ディレクションドットの配置は、予め第2のコードの向きとの対応関係を定めておけば、基準ドットに対してどの方向でもよい。ディレクションドットと基準ドットの識別は、セルの中心に有るか否か、または基準ドットを繋ぐことによって形成される格子線上に位置するか否かによって容易に判別できる。また、ディレクションドットは、どのように配置してもいいが、所定間隔で配置することにより、撮像されたQRコードの変形の度合いを反映させて、セルの向きを補正し、正確な数値データの取得を実現する。つまり、セルの向きに合わせて、セル中央位置からの距離と方向によるバウンディングボックスの中心となる仮想点との幾何学的配置関係を回転させてバウンディングボックスの配置を補正し、当該位置近傍の情報ドットや情報分割セルの認識に用いる。なお、上記のディレクションドットを形成したセル中央の基準ドットを削除してもよい。その場合、基準ドットを繋ぐことによって形成される格子線の交点より上方にディレクションドットが位置することによって、容易に向きを認識できる。また、セル内の所定の位置にディレクションドットを形成することにより、第2のコードの向きを設定してもよい。図示しないが、向きを認識できる2個以上のドットの配置によって向きを設定してもよい。さらに、向きの設定はディレクションドットに代えて分割セルを用いてもよいし、マークの形状によって向きを設定できるマークを用いてもよい。また、情報ドットや情報分割セルの形成において、向きを認識できる特定の配置を設定してもよい。
 図110は、図104の複合コードに設けた基準パターンを構成する基準ドットの配置を変えて、第2のコードの向きを設定した実施例である。つまり、右上の1段目と2段目の暗色セルにそれぞれ5個の基準ドットで形成した2種のパターンは、いずれも非回転対称であり向きを設定できる。この2種のパターンを合成すると基準パターンが形成されることから、基準パターンに方向機能を付加した実施例となる。図109および図110の実施例は、明色、暗色セルの少なくともいずれかに形成することができ、他の実施例と組み合わせて使用できることは言うまでもない。
 [コンピュータが読み取り可能な記録媒体]
 コンピュータその他の機械、装置(以下、コンピュータ等)に上記いずれかの機能を実現させるプログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる。そして、コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
 ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータ等から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、CD-ROM、CD-R/W、DVD、ブルーレイディスク、DAT、8mmテープ、フラッシュメモリなどのメモリカード等がある。また、コンピュータ等に固定された記録媒体としてハードディスク、ROM(リードオンリーメモリ)等がある。さらに、SSD(Solid State Drive)は、コンピュータ等から取り外し可能な記録媒体としても、コンピュータ等に固定された記録媒体としても利用可能である。
 [実施形態11]
 下記に示す実施例は、セルが配列状に形成され、少なくともセルには、セルを識別できる色を有する所定領域を設けてその所定領域の色によってデータを定義する第1のコードにおいて、少なくともセルの一部を第2のコードを形成するための特定セルとして、所定領域を除く領域を設けて、当該領域に識別可能なマークを設け、マークの形状や大きさ、向き、色、配置パターン等の有無でデータを定義する複合コードについてのものである。複合コードが第1のコードをベースとするため、第1のコード固有のセルも含まれ、第1のコードと第2のコードとで、向きを同一とする。なお、この実施形態で用いるマークは、実施形態1で用いた情報設定可能なサブセルや情報を定義するドットパターン、実施形態10で用いた情報ドットや情報分割セルなどを含む。前述の実施形態1および10では、第1のコードとして、セルの支配的な色でセルの明暗を識別してデータを定義したが、下記に示す実施例では、主にセルの中央部に配置される所定領域の色をセルの色として識別してデータを取得している。すなわち、所定領域の中央またはセルの中央に、セルの位置情報を座標値で定義づける仮想点として基準点が配置され、その基準点または、基準点を含む小領域(少なくとも所定領域の1部)の色でセルの色が識別される。なお、前述の実施形態1および10において、中央部を所定領域として、セルの色に変更して、マークを識別できるようにしてもよい。さらに、本実施例と組み合わせて用いることができる。また、実施形態1および5、10の様々なマークについても本実施例と組み合わせて用いることができる。ここでは、実施例として基準点の位置やコードの向き、所定領域、マーク、区画などを例示しているが、所定領域内に配置されていれば基準点はどのような位置にあってもよく、コードの向きも第1のコードと第2のコードとで異なってもよく、所定領域やマーク、区画などについては、形成(表示や印刷など)および読み取りができれば、形状や大きさ、向き、色、数、配置位置などがどのようなものであってもよい。なお、区画とは、セルを複数に区画して、所定領域やマークを配置する領域である。そして、複数あった場合は、お互いに、形状や大きさ、向き、色などが異なってもよい。ただし、複数の所定領域の色が異なる場合は、特殊な場合であり当該所定領域の配置を認識しなければならない。その配置と色が認識できれば、その配置と色の組み合わせでさらに多くの情報を格納できる。その際に、第1のコードで読み取る基準点が設けられている所定領域と区別して配置する必要がある。
 複合コードでは、第1のコードと第2のコードに付加できる情報量に大きな差があることは言うまでもないが、第1のコードとしてQRコードを用いる場合は、QRコードに形成されたファインダパターン、タイミングパターン、アライメントパターンなどの機能パターンを用いて、QRコードが変形して撮像されても補正を行うことで、各セルの配置位置、つまり、複合コードの向きや各セルの所定領域の基準点の座標値が求まる。さらに、下記の実施例4で定義する基準セルなどを用いることで本来の第1のコードよりも格段に精密な補正を行うことができ、それを基に数値情報が定義されるマークの配置位置を認識し、第2のコードからデータを読み取ることができる。なお、複合コードのセルの位置の補正を行うための要素は、同じコード内にあるのが望ましいが、コードの外側などを含めてどこにあってもよい。さらに、セルを複数に区画化した場合は、区画と区画が接触しないように区画を分離して配置した基準セルとしてもよい。なお、下記に示す実施例1~16は、構成する要素を互いに組み込んで、どのように組み合わせて使用してもよい。さらに、本実施形態は、実施形態1~10を構成する要素を組み込んで使用してもよいし、実施形態1~10は、本実施形態を構成する要素を組み込んで使用してもよい。
 (実施例1)
 図111は、複合コードの一部の例である。複合コードを形成するセルは、配列状に配置されているが、図112では、複合コードの構成を分かりやすくするために、図3以降の説明で、セル内に情報を定義するためのマークとして、情報ドットや情報分割セル、情報設定可能なサブセル、情報を定義するドットパターン等の名称を用いて数値情報を定義している複合コードで第2のコードを形成するセルを特定セルと称している。特定セル1個毎の区画1-0(1-00および1-01)を実線で示している。この実線は実際の複合コードには描かれない。中央の円形状の所定領域2-0は、暗色領域2-01(黒色)または明色領域2-00(白色)で形成されており、所定領域を除く領域2-1(2-10および2-11)は、いずれも明色領域2-10である。明色領域では、セルの所定領域2-00(白色)と所定領域を除く領域2-10(白色)の境界を明示するため、円形状の点線で示しているが、実際の複合コードにはこの点線は描かれない。所定領域2-0(2-00および2-01)は、特定セルの中央に配置することが望ましいが、形成および読取ができれば、特定セル内のどこにあってもよい。また、所定領域2-0(2-00および2-01)の数は、同一色であれば複数であってもよい。これらの所定領域2-0(2-00および2-01)の色の認識のために、所定領域内に図113(c),(d)の+印で示す基準点を設けて、第1のコードを読み取り、全てのセルの基準点の座標値が計算され、+印で示す基準点の座標値も取得することができる。なお、この+印は複合コードには描かれない。その後、基準点または、基準点を含む小領域(少なくとも所定領域の1部)の色を認識してセルの色識別を行う。この実施例では、黒色の暗色領域2-01と、点線で囲まれた白色の明色領域2-00の2色で第1のコードのデータを定義しているが、所定領域2-0の色を互いに識別できれば、白と黒である必要はない。例えば、セルの所定領域のカラー、明暗のレベル等をコードリーダーで読み取って、互いに識別できればよく、3色以上であってもよい。セル当たり、2色であれば1bit,4色であれば2bit,8色であれば3bitとなる。RGBおよびそれらの内の2色の混合色(C、M、Y)、3色の混合色(W)、いずれも含まない色(B)の計3bitによる8色の場合、つまり、白、黒、赤、緑、青、シアン、マゼンダ、黄色であれば識別が容易である。さらに、白~グレー~黒を4段階、赤、緑、青、シアン、マゼンダ、黄色を2段階(明暗、彩度、色相等を異ならせて、互いに識別できる各2色を生成)で形成すれば、6bitの情報を1つのセルで定義できる。
 所定領域2-0の形状は、本実施例では円形状であるが、線分、円形、略円形、矩形、多角形や任意の線分や曲線で囲まれた形状であってもよい。また、セルの所定領域2-0は、特定セル1-0と同一の形状と大きさを含んでいてもよい。その場合、特定セル1-0は1色で塗りつぶされることになる。なお、2色による複合コードの生成では、複合コードが形成される媒体の色と識別できる1色のみで印刷でき、媒体の色と合わせて2色をセルの色として識別するようにすれば、コスト的なメリットが高い。図113は、第2のコードによるデータの定義の方法を示している。図113(a)は、所定領域2-0(中央部)が暗色領域2-01であるセルの実施例であり、図113(b)は、所定領域2-0(中央部)が明色領域2-00であるセルの実施例である。いずれでも第1のコードの対応するセルの基準点から円形状のマーク3-0(3-00および3-01)を上下・左右・斜め45度方向に所定間隔を空けて8か所に配置して、それらの配置位置のマークの色によって数値情報を定義している。
 本実施例では、特定セル1-0の基準点はセルの中央に配置されているが、セルの色を識別できる位置であれば、基準点は所定領域内のどこに配置されてもよい。その他、所定領域に配置される基準点は、撮影した複合コードが記録されるフレームバッファ(XY座標軸を有する二次元画像一時記憶領域)において、実施形態10の図66~70の説明のように、2値化されたn個のピクセル(画素)で形成される所定領域2-0の中心座標値(X,Y)を、各ピクセルの中心座標値を(X,Y)として、X=(ΣX,i=1~n)/n,Y=(ΣY,i=1~n)/nの図心として計算によって求めてもよい。この基準点または、基準点を含む小領域(少なくとも所定領域の1部)の色を互いに識別可能なセルの色として認識する。しかし、複合コードが形成された媒体が湾曲していたり、複合コードをカメラで斜めに撮影したりして、複合コードが大きく変形する場合があり、第1のコードの読み取りによって算出された基準点の座標値に、撮像された所定領域2-0から求められる基準点の座標値に対してずれが生じる場合がある。それを許容するには、第1のコードの読み取りによって算出された基準点の座標値が所定領域内に含まれるように、所定領域2-0の面積がセルの面積の1/10程度以上であることが望ましい。なお、複合コードの形成面が平面を保持し、カメラで真正面(傾かない)から撮影した場合や、第1のコードの読み取りによってずれて算出された基準点の座標値を所定領域2-0に含まれるように補正すれば、所定領域の面積がセルの面積の1/20程度以上であればよい。補正の方法としては、図113(a),(c)の複合コードでは、所定領域である黒色の暗色領域2-01が白色の明色領域2-10で囲まれていることから、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いればセルの所定領域2-0が容易に抽出でき、所定領域の基準点を算出することにより正確に補正できる。しかし、図113(b),(d)の複合コードでは、白色の明色領域2-00である所定領域を抽出できないことから、図113(a),(c)の複合コードで算出された所定領域の基準点を基に補間して白色の明色領域2-00である所定領域の基準点を算出してもよい。一方、以下で説明する図116の場合は、所定領域である黒色の暗色領域2-01が白色の明色領域2-10で囲まれており、所定領域である白色の明色領域2-00が黒色の暗色領域2-11で囲まれていることから、特定セルの所定領域2-0が抽出可能であり、どの特定セルでも所定領域2-0の基準点を算出することにより正確に補正できる。
 マーク3-0の配置位置は、円形状の実線で示し番号を(1)~(8)(図では丸付き数字、以下も同様)まで付しているが、実際の複合コードには、円形状の実線や番号は描かれない。また、所定領域2-0およびマーク3-0と特定セル1-0との幾何学的関係を分かりやすくするためにセルの外枠を実線で示しているが、この外枠も実際の複合コードには描かれない。図113(c),(d)の×印で示されたマーク3-0の中心は、特定セル1-0の向き(複合コードの上向き)に対して、右周りで(1)が0度、(2)が45度、(3)が90度、(4)が135度、(5)が180度、(6)が225度、(7)が270度、(8)が315度の方向に、特定セル1-0の基準点から所定間隔(円形点線で示す半径r)を空けて配置している。この円形点線や×印も実際の複合コードには描かれない。以降の実施例でも同様に描かれない。本実施例では、(1)~(8)のマーク3-0は、それぞれが明色マーク3-00(0:ビット情報=0あるいはOFF、以下のカッコ内も同様)であるか暗色マーク3-01(1:ビット情報=1あるいはON、以下のカッコ内も同様)であるかで、マーク1個で1bitの情報を定義している。明色マーク3-00(0)であるか暗色マーク3-01(1)であるかの判断は、図113(c),(d)で×印の位置の色を認識して識別して行っている。この場合、明色部分は所定領域を除く領域2-10にマーク3-01が配置されていないケースと等価であり、マーク3-01が1個も配置されないケースも情報として定義することができる。1個のセル内にマーク3-0の配置位置が8か所あることから、1個のセルに8bitの情報が定義できる。8bitの情報は、左から(8)、(7)、(6)、(5)、(4)、(3)、(2)、(1)の順にデータ化される。もちろん、この順番はどのように設定してもよい。マーク3-0による情報の定義について、図113(c),図113(d)は、それぞれ図113(a),図113(b)に円形状のマークを配置した実施例であり、図113(c)では、10100011,図113(d)では、11010110の数値情報が定義されている。
 本実施例では、第1のコードの読み取りにより、コードの向きを認識して基準点から所定方向に、所定間隔空けて8個配置しているが、所定方向と所定間隔はどのように設定してもよい。また、実施形態1および実施形態10にも例示しているように、セル内のどのような位置に配置してもよい。例えば、本実施例のように、マーク3-0が配置される位置の色を識別するのではなく、互いにユニークとなる配置パターンとコードの向きを数値情報として定義してもよい。
 マーク3-0の色は、互いに識別可能な色であれば、前述したセルを識別する所定領域2-0の色のようにどのような色に設定してもよい。つまり、セル当たり、2色であれば1bit,4色であれば2bit,8色であれば3bitとなる。8色の場合、白、黒、赤、緑、青、シアン、マゼンダ、黄色であれば識別が容易である。さらに、白~グレー~黒を4段階、赤、緑、青、シアン、マゼンダ、黄色を2段階(明暗、彩度、色相等を異ならせて、互いに識別できる各2色を生成)で形成すれば、6bitの情報を1つのマーク3-0で定義できる。従って、配置位置8か所(3bit)との組み合わせで9bitの数値情報を1つの特定セル1-0で定義できる。なお、マーク3-0として定義できる複数の色は各セル毎に設定してもよい。なぜなら、マーク3-0の色はセル内で互いに識別可能であれば、当該セルの数値情報として定義できるからである。なお、マーク3-0の色の認識方法は、マーク3-0の配置候補におけるマーク内に含まれる中心位置などの座標位置の色を認識する以外に、実施例10に記載された様々なバウンディングボックスのいずれかを使用してもよい。本実施例では、マーク3-0の形状を円形としたが、実施形態1および実施形態10に例示している様々なマークのように、マークの形状(線分、円形、略円形、矩形、多角形や任意の線分や曲線で囲まれた形状)や大きさ、向き等を異ならせて情報を定義してもよい。第2のコードは、マーク3-0の色、形状、大きさ、向きや配置パターンによって、セル毎の数値情報を定義できるが、セル毎に、第2のコードの数値情報の定義の方法が異なっていてもよい。なぜなら、全てのセルには、その位置によってインデックスが設けられており、第1のコードをコードリーダーで読み取ることにより、セルのインデックスを取得することができるからである。第2のコードでは、そのインデックスを有するセル毎の数値情報の定義の方法を予め定めておけばよい。このような数値情報の定義の方法や誤り訂正方法、データ容量、データ圧縮方法、暗号化方法等をデータフォーマット情報として第1のコードに格納して、第1のコードを読み取ることにより、第2のコードのデータフォーマット情報を取得して、第2のコードを読み取るようにしてもよい。このデータフォーマット情報と第1のコードのセルインデックスを基に、第2のコードの特定セルインデックスを作成してもよい。
 なお、本実施例も含め、以降の実施例で説明する図に記載されるセルは、全て特定セルとして図示されているが、特定セルを除く図示されていないセルは、特定セルと同様に少なくともセル内に所定領域が形成され、その所定領域は、識別可能な色を有していなければならない。なお、特定セルを除くセルは、所定領域を除く領域を有しないセルを含んでもよい。つまり、従来のQRコード等のように各セル内の全領域が識別可能な色を有していてもよい。
 図114は、撮像により本来の位置からずれた位置に検知された基準点を適正な基準点に補正する方法を示している。まず、暗色セルに配置した基準点の位置を、例えば、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて求める。次に、基準点同士を上下・左右方向に仮想の直線で繋いで格子線を形成し、その格子点の座標値を明色セルの中央座標値とする。格子点の存在しない明色セルでは、近傍の格子線と略等間隔で内挿または外挿して仮想の格子線を引き、格子点を求めればよい。
 本実施例で記載した内容は、実施形態1および実施形態5、実施形態10で説明した複合コードおよびこれ以降に記載する複合コードにも対応させることができる。さらに、それらをどのように組み合わせて用いてもよい。
 (実施例2)
 図115は、実施例1で示した複合コードの中央の円形状の所定領域2-0が暗色領域2-01(黒色)の場合のセルで所定領域を除く領域2-1を暗色2-11とし、所定領域2-0が明色領域2-00(白色)の場合のセルで所定領域を除く領域2-1を明色2-10とした実施例である。本実施例の特徴は、第1のコードがQRコード等の既存のコードの場合、既存のコードリーダーで読み取れる範囲が広くなることである。例えば、QRコードリーダーは、約半数がセルの中心位置の色を識別する方法を利用し、残り約半数がセル全体の色で識別する方法を利用するが、後者において、セル内で支配的である色を、特定セル1-0の識別可能な色として認識するには、所定以上の面積を有する所定領域2-0でなければならない。図111~図113で示したQRコード部分の読み取り方法は、セルの所定領域2-0が狭いため、セルの中心位置の色で識別するコードリーダーしか使用できない。本実施例では、マーク3-0部分を除く全領域をセルの色を有する所定領域2-0とすることにより、所定領域2-0の面積を広くでき、既存のQRコードリーダーでQRコード部分を読み取ることができる。所定領域内にセルの色を識別する基準点(セルの中央)を設ければ、前述した両方の読み取り形式でQRコード部分を読み取ることができる。なお、所定領域2-0のセルに対する面積比は、所定領域2-0と所定領域を除く領域2-1の面積が1対1程度ある場合は、どちらの色であるか判別できない。しかし、所定領域2-0の面積と所定領域を除く領域2-1の面積が2対1以上あれば、両者を識別することができる。つまり、所定領域2-0の特定セル1-0に対する面積比が60%以上であれば、セル全体の色で識別するQRコードリーダーでQRコード部分を読み取ることができる。さらに望ましいのは面積比2/3以上あれば、撮影環境が悪くても確実に認識できる。セル全体の色による識別は、セル全体の明度(明暗)や色相(カラー)、彩度(鮮やかさ)で認識してもよい。また、セル内で支配的である色が、所定領域にセルの色の濃度を高めてどれだけ多くのセルの本来の色を含むかで識別してもよい。例えば、2色として白とグレーを使用したときに、グレーのセルの所定領域に黒を使うことによって、セル全体ではグレーのセルとして判定しやすくなる。当然、専用の複合コードリーダーに上記読取り方式を採用してもよい。なお、セルの所定領域を除く領域2-1に配置されたマーク3-0による数値情報の定義の方法は、実施例1で説明した内容と同様である。
 撮像により本来の位置からずれた位置に検知された基準点を適正な基準点に補正する方法として、例えば、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて、マークの位置を求めることができる。
 (実施例3)
 複合コードが形成された媒体が湾曲していたり、複合コードをカメラで斜めに撮影したりして、複合コードが大きく変形する場合があり、第1のコードの読み取りによって算出された基準点の座標値が、所定領域の外の座標値となる場合がある。そこで、所定領域から基準点の座標値を算出し、正しい基準点の座標値に補正する必要がある。ところが、図111~図113では、明色(白色)である所定領域2-00と所定領域を除く領域2-10の境界が認識できないため所定領域2-00を、抽出できない。そこで、図116のように、図111~図113の明色特定セル1-00の所定領域を除く領域を暗色(黒色)にすれば、所定領域を抽出でき、実施例1と比べてさらに精度よく基準点を算出することができる。この場合は、所定領域2-0と同一色の領域が少なくなるため、セル全体の色で識別するQRコードリーダーで第1のコードを読み取ることが困難になる。
 図117は、撮像により本来の位置からずれた位置に検知された基準点を適正な基準点に補正する方法を示している。まず、明色および暗色セルに配置した基準点の位置を、例えば、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて求める。次に、基準点同士を上下・左右方向に仮想の直線で繋いで、その交点の座標値を明色および暗色セルの中央座標値とする。
 (実施例4)
 図118は、所定の位置に配置されたセルにはマーク3-0を配置しないで、セルの所定領域2-0を、所定領域を除く領域2-1(セルと識別できる色と異なる色の領域)で囲むようにした、特定セルの1種である基準セル1-1の実施例である。所定の位置は、コードリーダーに記憶しておいてもよいし、第1のコードに第2のコードのデータフォーマット情報として格納しておいてもよい。このような所定の位置の基準セル1-1の位置情報の格納方法は、後述する実施例5、9、10、12に適用してもよい。本実施例では、上から行番号、左から列番号とした場合、1行1列、1行6列、5行1列、5行6列(コーナーの4か所)の所定の位置に基準セル1-1が配置されている。これにより、基準セルの所定領域2-0を容易に抽出できるようにして、実施例3と同様に、基準点の座標値の補正を行う。1行1列、5行6列の基準セル1-10では、明色の所定領域2-00が所定領域を除く暗色の領域2-11で囲まれ、1行6列、5行1列の基準セル1-11では、暗色の所定領域2-01が所定領域を除く明色の領域2-10で囲まれている。本実施例では、基準セル1-1を配置して、基準セル1-10の所定領域2-00と、他の暗色の所定領域2-01から算出される基準点を基に補間して、明色の所定領域2-00の基準点を算出してセルの識別の精度を向上させている。補間の方法は、算出された基準点同士を仮想の線で格子状に繋ぎ、明色特定セルにおけるそれらの格子点を明色の所定領域2-00の基準点とすればよい。明色の所定領域2-00の基準点が格子点として形成されない場合は、近傍の格子線と略等間隔で内挿または外挿して仮想の格子線を引き、格子点を求め当該明色の所定領域2-00の基準点とすればよい。暗色の所定領域2-01から算出される基準点も用いることができることから、基準セル1-1は、複合コードを形成するセル数にもよるが、10個~25個前後以上の間隔に配置すれば十分である。
 基準セルの基準点は、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて求めればよい。
 本実施例により、複合コードが形成された媒体が湾曲していたり、複合コードをカメラで斜めに撮影したりして、複合コードが大きく変形しても、基準点の座標値を正確に算出して第1および第2のコードに定義されたデータを正確に算出することができる。なお、本実施例を、QRコード等、既存の二次元コードの認識率を向上させるために適用して、より正確な基準点の座標値を求めてセルの識別に使用してもよい。その場合、基準セルを所定の間隔で配置してもよいし、所定の範囲または全てのセルを基準セルとしてもよい。
 図119に、基準セルの配置例として、QRコードのバージョン6(41x41セル)に配置した例を示す。QRコードでは、QRコードの外周にクワイエットゾーン0-0が囲むように設けられ、その内部の左上、右上、左下のコーナーにファインダパターン0-1(それぞれ0-11、0-12、0-13)と、右下近傍から1以上のQRコードの補正のためのアライメントパターン0-3が内部に向けて所定の位置に配置されている。最も端(クワイエットゾーン0-0)に近いアライメントパターン0-3は、端から4セル空けて配置されている。QRコードには、1~40のバージョン等の格納情報量が設定され、各バージョン毎に、どのように、どのようなデータが配置されかを定める形式情報0-4(データフォーマット情報)が3個のファインダパターン0-1の近傍に設けられている。タイミングパターン0-5は、水平方向には左上のファインダパターン0-11から右上のファインダパターン0-12に、垂直方向には左上のファインダパターン0-11から左下のファインダパターン0-13に向かって、暗色セルから始まり、明色セルと暗色セルが交互に配置されている。また、アライメントパターン0-3とアライメントパターン0-3の間には、バージョンに基づき、11~25個セルが空けてあり、そのアライメントパターン0-3の配置に対応させると、基準セル1-1については、図119の黒セルで示すように、セル番号(11,11)や(31,11)、(31,31)のように端からおおよそ5~10個前後、セル番号(11,11)と(31,11)あるいは、(31,11)と(31,31)のように基準セル1-1と基準セル1-1の間は、おおよそ10~25個前後が妥当である。精度の高い格子線を結ぶために、図のように基準セルを同じ行または列に配置するのが望ましい。精度を上げるためには、間隔を半分程度に縮めて図中の斜線パターンの基準セル1-1‘(21,11)や(31,21)、さらには、基準セル1-1“(21,21)などを加えてもよい。図では、わかりやすくするために基準セルを黒色または斜線パターンで示しているが、実際には基準マークまたは基準パターンを配置したセルである。基準セルは、QRコードのように、固定位置に配置してもよいし、複合コード毎に位置が違っていてもよい。このような基準セル1-1は、前述の特定セルインデックスで認識できるようにするのが望ましい。
 図120のフローチャートを用いて、QRコードの読み取り手順の例を説明する。QRコードは、印刷体に形成されるか、または、ディスプレイなどに表示されるが、まず、QRコードリーダーを用いてその画像を撮影する。QRコードリーダーとしては、スマートフォンに搭載したQRコードリーダーアプリでも専用のQRコードリーダーでもよい(U01)。撮影の仕方により、陰影が多少不鮮明となったりするが、各セルの明暗判定をするために、フレームバッファ(XY座標軸を有する二次元画像一時記憶領域)に記録された画像の2値化を行う(U02)。3個のファインダパターン(位置検出パターン)0-1がQRコードの3つの角を占め、QRコードを抽出するのに都合がいいので、その次に、ファインダパターン0-1を探索する。ファインダパターンは、黒:白:黒:白:黒=1:1:3:1:1という特徴的な構成をしているため、これを手掛かりとして、縦、横、斜め方向などのスキャンにより、これらを抽出する。また、1個以上配置されているアライメントパターン0-3についても、黒:白:黒:白:黒=1:1:1:1:1という特徴的な構成を基に、同様にして抽出する(U03)。そして、ファインダパターン0-1とアライメントパターン0-3より、QRコードの切り出しをする。(U04)。3個のファインダパターン0-1および1個以上のアライメントパターン0-1の中心座標値を基にして、セルのサイズや個数、位置が算出され、さらに、各セルの中心座標値が算出される。形式情報0-4と合わせてセルの個数を認識することもできる。ここで、タイミングパターン0-5をセルの配置個数や各セルの座標値の算出に使用してもよい。また、QRコードが変形され撮像された場合、3個のファインダパターン0-1とアライメントパターン0-3の中心座標値を求めることにより、射影変換ですべてのセルの中心を計算することができる。さらに、補正が正しくなされているかをタイミングパターン0-5で確認してもよい。(U05)。約半数のQRコードリーダーでは、中心座標位置の明暗を基にセルの明暗判定を行い、残り約半数のRコードリーダーでは、セルの全体の平均明度(明暗)でセルの明暗判定を行うが、中心座標値が算出されており、セルの区別も明確になっているので、どちらの方式であってもセルの明暗判定が可能である(U06)。全セルの明暗が明確となったところで、データが復号され、情報を取得する(U07)。データ復号の過程として、型番情報の復号(U071)およびマスクパターンの適用(U072)、格納情報の復号(U073)、埋め草コードの除去(U074)などが含まれる。なお、マスクパターンとは、QRコードの読み出しを確実にするために、明暗(白黒)のセルバランスを最適化する処理に用いられるコードパターンのことであり、埋め草コードとは、コード語の数がシンボルの容量に満たない場合に、空のコード語位置を埋める目的で使用するデータを示さない仮のコードのことである。また、これらのデータ復号の過程は、第2のコードで使用してもよい。
 QRコードの読み取り方法は、上記に限った方法に限定されることなく、工業規格によって生成されたQRコードをどのような方法で読取り、データを復号してもよい。当然、複合コードの第1のコードとしてQRコードを使用した場合も同様である。
 図121には、QRコードの読み取り手順におけるQRコードの各セルの座標値が算出されていく過程を示す。図121(a)は、印刷体に形成されたか、あるいは、ディスプレイなどに表示されたQRコードの画像を示す。図121(b)は、読み取り装置に撮像されたQRコードの画像を示す。このように、撮影の仕方により、陰影が多少不鮮明となったりする。図121(c)は、撮像された画像を2値化したQRコードの画像である。図121(d)は、算出されたファインダパターン0-1とアライメントパターン0-3の中心座標位置を白丸で模式的に示した図である。実際の座標位置は点であり、これらの白丸のような大きさを持たない。また、これらのような白丸は、実際の複合コードには描かれない。図121(e)は、算出された各セルの中心座標位置を、わかりやすくするために、明色セルでは黒丸、暗色セルでは白丸として示した図である。実際の座標位置は点であり、これらの黒丸や白丸のような大きさを持たない。また、これらのような黒丸や白丸は、実際の複合コードには描かれない。
 図122は、図119の複合コードの一部を拡大した図であるが、これを用いて基準点の補正方法を示す。基準セルの基準点を求めた後に、格子状に基準点を仮想の線で結んでいく(破線)。次に、横方向の行および縦方向の列の各セルの中央を通るように内分点を求めていき、同じ行または列にある内分点同士をそれぞれ仮想の横線または縦線で結ぶ。このようにして、形成させた格子線の各格子点がそれぞれのセルの基準点として求まる。例えば、基準点と基準点の間に10セル分の距離があるので、基準点Aは、その距離を2/10で内分して求めた基準点A’およびその距離を1/10で内分して求めたA”を通る仮想の内分線の格子点として求まる。
 QRコードでは、本来の第1のコードの特性を活かしながら第2のコードで情報を付加するので、第1のコードの機能パターンなどを残しつつ第2のコードによる補正を行うが、新たなコードとして、アライメントパターン0-3などを取り除き、第2のコードを独立したコードとして基準セルなどを用いて補正することも可能である。その場合、補正などに用いるアライメントパターン0-3が5x5の計25セルを必要とするのに対して、基準セルはたったの1セル、つまり、1/25で同等以上の役割が果たせるので、その分、データ領域を増やすことができる。また、アライメントパターン0-3を一部残し、基準セルなどと併用してもよい。この場合、従来のQRコードリーダーでは読めなくなり、新たなコードリーダーが必要となる。
 図123および図124により詳しい仮想の格子線の引き方を示している。まず、図123の破線で示すように、基準セルの基準点を仮想の線で繋ぐ。次に、図124の点線で示すように、破線の内挿または外挿によって内分点または外分点を求め、それらの点を繋ぐと、すべてのセルを通る仮想の格子線が形成でき、その格子点により全てのセルの基準点の補正ができる。ここでは、横方向にDの距離で均等に内分し、縦方向にDの距離で内分して縦横の格子線を求めている。なお、基準セルには、通常情報を付加しないが、付加してもよい。その他の特定セルについても、情報を付加しないダミーセルであってもよい。第2のコードのデータが格納情報を下回る情報量であれば、本来、特定セルとして使用しない第1のコードのセルを基準セルとして多く設けて基準点の補正に使用してもよいことは言うまでもない。
 (実施例5)
 図125は、実施例4の基準セル1-1の所定領域2-0の形状を、向きを定義できる二等辺三角形とした実施例である。撮像された複合コードが大きく変形して正確な向きが認識できなくても、二等辺三角形の所定領域2-0により基準セル1-1における向きが正確に認識できる。なお、基準セル1-1の所定領域2-0の形状は、向きを認識できればどのような形状や大きさでもよい。特定セル1-0の向きのずれは、基準点の座標値のずれよりも少ないため、複合コードを形成するセル数にもよるが、基準セル1-1は10個~25個前後以上の間隔に配置すれば十分である。また、基準セル1-1の所定領域2-0の基準点は二等辺三角形の図心としてもよい。その場合、所定領域の図心とセルの中心を一致させるのが望ましい。基準点を図心以外に定めた場合でも、その基準点とセルの中心を一致させるのが望ましい。これにより、実施例4と同様に、各セルの基準点の座標値が正確に算出される。なお、この基準セル1-1に所定領域2-0と接触しないようにマーク3-0を配置して数値情報を定義してもよい。他の形状や大きさの所定領域を用いた場合でも、同様である。もちろん、基準点を他の位置に配置してもよい。
 基準点は、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて求めればよい。図126に格子線の引き方を示しているが、三角形の所定領域の基準点とセルの中央点が一致する場合の例として、まず、破線で示すように、基準セルの基準点を線で繋ぐ。次に、図示しないが、図124と同様に格子点の存在しない行および列では、内挿または外挿によって格子線を形成し格子点を求めればよい。
 (実施例6)
 図127は、特定セル1-0内における所定領域2-0およびマーク3-0との幾何学的関係を明示した基準パターンを配置した、特定セルの1種である基準セル1-2の実施例である。所定の位置に配置されたセルの所定領域を除く領域2-1に全てのマーク(基準マーク3-1)を配置して、セルの所定領域2-0を、所定領域を除く領域2-1(セルと識別できる色と異なる色の領域)で囲むように形成されている。所定の位置は、コードリーダーに記憶しておいてもよいし、第1のコードに第2のコードのデータフォーマット情報として格納しておいてもよい。このような基準セル1-2の位置情報の格納方法は、後述する実施例7、11、13に適用してもよい。本実施例では、上から行番号、左から列番号とした場合、1行1列、1行6列、5行1列、5行6列(コーナーの4か所)の所定の位置のセルに基準パターンが形成されている。基準パターンを形成する各マーク3-0の中心座標値を算出すれば、撮像された複合コードが大きく変形してマーク3-0の配置位置が本来の位置からずれが生じた場合でも、基準パターンを参照して正確に数値情報を取得できる。基準パターンを含む基準セルを有する複合コードの他の実施例でも同様の処理ができる場合がある。特に、所定領域と所定領域を除く領域とが同じ明色で区別しにくい特定セルのマーク位置の算出方法として、基準点に基づいて形成した格子線を用いた基準点の算出方法を補う方法として有効である。なお、本実施例のマーク3-1の配置位置は、図113(a),図113(b)の(1)~(8)の配置候補位置と同じであるが、複数のセルに分けてマーク3-1を配置してもよい。例えば、(1)、(3)、(5)、(7)と(2)、(4)、(6)、(8)を異なる近傍のセルに形成し合成して使用することができる。
 1行1列、5行6列の基準セルでは、明色の所定領域2-00が所定領域を除く暗色の領域2-11で囲まれて明色基準マーク3-10が配置され、1行6列、5行1列の基準セル1-11では、暗色の所定領域2-01が所定領域を除く明色の領域2-10で囲まれて暗色基準マーク3-11が配置されている。本実施例では、基準パターンの中心に配置された所定領域2-0から算出される基準点と各マーク3-1との幾何学的関係を正確に認識すると共に、基準点も正確に算出できることから、実施例4と同様に基準点の正確な算出も可能となる。なお、基準点に対する各マーク3-0の配置のずれは、基準点の座標値のずれよりも少ないため、基準パターンは、複合コードを形成するセル数にもよるが、10個~25個前後以上の間隔に配置すれば十分である。
 基準点は、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて求めればよい。図128に格子線の引き方を示しているが、破線で示すように、基準セルの基準点を線で繋ぐ。次に、図示しないが、図124と同様に格子点の存在しない行および列では、内挿または外挿によって格子線を形成し格子点を求めればよい。なお、基準パターンも補間して、各特定セルの基準点と各マーク3-0の幾何学的関係をさらに正確に求めてもよい。
 基準パターンによって構成される基準セルでも、所定領域やマークの形状や大きさ、向き、色、数、配置位置などがどのようなものであってもよい。そして、複数あった場合は、お互いに、形状や大きさ、向き、色などが異なってもよい。また、基準点が認識できれば、所定領域と所定領域を除く領域の色が同じであってもよい。
 (実施例7)
 図129は、実施例6において、図113(a),図113(b)で示す(1)~(8)のマークの内、(5)を外した基準パターンを形成した実施例である。本実施例により、マーク3-1の配置パターンはユニーク(非回転対称)となり方向を認識することができ、実施例6と同様に基準パターンに2次元性があるため、実施例6と同様な効果を得ることができる。
 基準点は、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて求めればよい。図130に格子線の引き方を示しているが、まず、破線で示すように、基準セルの基準点を線で繋ぐ。次に、図示しないが、図124と同様に格子点の存在しない行および列では、内挿または外挿によって格子線を形成し格子点を求めればよい。
 (実施例8)
 図131は、第2のコードとしてセル内を複数に区画した領域に、所定領域2-0および所定領域を除く領域2-1を形成し、後者にマーク3-0を配置した複合コードの例である。図131およびそれ以降の関連する図において、明色の所定領域を点線で示しているが、実際の複合コードには描かれない。複合コードを形成するセルは、配列状に配置されているが、図132では、複合コードの構成を分かりやすくするために、特定セル1-0(1-00および1-01)1個毎に外枠を実線で示しているが、実際の複合コードには、実線は描かれない。
 本実施例では、図133(a)のように、既に過去に多く普及しているスマートフォンの解像度での表示・読み取りや300dpiによるラベル印刷や一般の事務用プリンターの精度を勘案し、1個の特定セルを6×6ピクセル以上で区画して形成するのが望ましい。なお、600dpiで印刷する場合は、12×12ピクセルで形成するのが望ましいが、高精度の印刷機で印刷し、カメラが高解像度であれば6×6ピクセルでも読取り可能である。現行スマートフォンのカメラの一般的な解像度が1980x1080ピクセル(207万画素、フルハイビジョン)以上であることから、これを下限と見なすと、このように生成された複合コードを読み取るには、区画領域の2×2(600dpi、12×12ピクセルで印刷した場合は4×4)を1区画として認識するのが望ましいことから、図131以降の図では、6×6ピクセルの場合を具体例としているが、便宜上、1個のセルを図133(b)のように、3×3で区画して表記する。なお、この区画を示す枠は実際の複合コードには描かれない。なお、昨今のスマートフォンのカメラの解像度は、年々、高解像度になっているので、区画領域の2×1区画(2ピクセル)を1区画としたり、1ピクセルを1区画としたりすれば、それらの区画で所定領域2-0やマーク3-0を形成しても第2のコードとして読み取れる。もちろん、1個のセルを7×7ピクセル,8×8ピクセル,9×9ピクセル,10×10ピクセルなどと大きくしていけば行くほど、多くの情報量を格納できる。その場合、複合コードは大きな面積を有することになる。このように、特定セルの構成は6×6ピクセルに限られることはなく、形成および読み取りができれば、どのような大きさやピクセル数から成り立っていてよいし、また、各区画の形状や大きさもどのようなものであってもよいし、異なる構成の特定セルの組合せであってもよい。
 中央の区画内に同一形状で位置する所定領域2-0は、図133(c)では、暗色2-01(黒色)、図133(d)では、明色2-00(白色)で形成されており、所定領域を除く領域2-1は、いずれでも、明色2-10として示している。明色セルでは、セルの所定領域2-00(白色)と所定領域を除く領域2-10(白色)の境界を明示するため、矩形状の点線で示しているが、実際の複合コードにはこの点線は描かれない。これらの所定領域2-0(2-00および2-01)の色の認識のために、所定領域内に図133(c)~図133(f)の+印で示す基準点を所定領域内に設けて、第1のコードを読み取り、全ての特定セル1-0の基準点の座標値を計算する。その基準点または、基準点を含む小領域(少なくとも所定領域の1部)の色を認識することによりセルの色識別を行う。この実施例では、黒色の暗色所定領域2-01と、点線で囲まれた白色の明色所定領域2-00の2色で第1のコードのデータを定義しているが、所定領域2-0の色を互いに識別できれば、白と黒である必要はない。例えば、カラー、明暗のレベル等でセルの所定領域をコードリーダーで読み取って、互いに識別できればよく、3色以上であってもよい。セル当たり、2色であれば1bit,4色であれば2bit,8色であれば3bitとなる。8色の場合、白、黒、赤、緑、青、シアン、マゼンダ、黄色であれば識別が容易である。さらに、白~グレー~黒を4段階、赤、緑、青、シアン、マゼンダ、黄色を2段階(明暗、彩度、色相等を異ならせて、互いに識別できる各2色を生成)で形成すれば、6bitの情報を1つのセルで定義できる。
 セルの所定領域は、セルと同一の形状と大きさ、向きであってもよい。その場合、セル1-0は1色で塗りつぶされることになる。なお、2色による複合コードの生成は、複合コードが形成される媒体の色と識別できる1色のみで印刷でき、媒体の色と合わせて2色をセルの色として識別するようにすれば、コスト的なメリットが高い。
 図133(c)~図133(f)は、第2のコードによるデータの定義の方法を示している。図133(c)は、所定領域2-0(中央部)が暗色2-01である特定セル1-0の実施例であり、図133(d)は、所定領域2-0(中央部)が明色2-00であるセルの実施例である。いずれでも、第1のコードのセルの基準点から、マークが配置される区画と同一の形状と大きさのマーク3-0(3-00および3-01)を上下・左右・斜め45度方向に8か所に配置して、それらの配置位置のマークの色によって情報を定義している。特定セル1-0の基準点の座標値は、原則第1のコードにより算出されるが、第2のコードで第2のコードを復号するための基準点の座標値を算出してもよい。さらに、第2のコードで第1のコードを復号するための基準点の座標値を算出してもよい。上記の基準点の座標値の利用は他の実施例で適用してもよい。
 本実施例では、特定セル1-0の基準点はセルの中央に配置されているが、セルの色を識別できる位置であれば、基準点は所定領域2-0内のどこに配置されてもよい。この基準点または、基準点を含む小領域(少なくとも所定領域2-0の1部)の色を互いに識別可能なセルの色として認識する。しかし、複合コードが形成された媒体が湾曲していたり、複合コードをカメラで斜めに撮影したりして、複合コードが大きく変形する場合があり、第1のコードの読み取りによって算出された基準点の座標値に、撮像された所定領域2-0から求められる基準点の座標値に対してずれが生じる場合がある。それを許容するには、所定領域内に第1のコードの読み取りによって算出された基準点の座標値が含まれるように、所定領域2-0の面積がセルの面積の1/10程度以上であることが望ましい。なお、複合コードの形成面が平面性を保持し、カメラで真正面(傾かない)から撮影した場合や、第1のコードの読み取りによってずれて算出された基準点の座標値を所定領域2-0に含まれるように基準点の座標値を補正した場合は、所定領域の面積がセルの面積の1/20程度以上であればよい。
 図133(c),図133(d)には、マーク3-0の配置候補位置が区画を示す矩形状の実線で示され、番号を(1)~(8)まで付しているが、実際の複合コードには、この実線や番号は描かれない。また、特定セル1-0との幾何学的関係を分かりやすくするためセルの外枠を実線で示しているが、この外枠も実際の複合コードには描かれない。図133(e),(f)の×印で示されたマーク3-0の中心は、特定セル1-0の向き(複合コードの上向き)に対して、右周りで(1)が0度、(2)が45度、(3)が90度、(4)が135度、(5)が180度、(6)が225度、(7)が270度、(8)が315度の方向に、特定セル1-0の基準点(中心)から所定間隔(上下・左右方向は区画の一辺の長さD,斜め方向は√2D)を空けて位置している。実施例1~7では、マークを方向と距離で定義される位置に置いたが、ここでは、それとは異なり、方向と距離ともに固定の位置にあると言える。本実施例では、(1)~(8)のマーク3-0は、それぞれ明色3-00(0:ビット情報=0あるいはOFF、以下のカッコ内も同様)であるか暗色3-01(1:ビット情報=1あるいはON、以下のカッコ内も同様)であるかで、1bitの情報を定義している。明色3-00(0)であるか暗色3-01(1)であるかの判断は、図133(e),(f)で×印の位置の色を認識して識別している。なお、マーク3-0の配置位置にあたる区画の中心の色を認識して色識別してもよい。図133(c),図133(d)の場合、所定領域を除く領域2-10にマーク3-01が配置されていないケースと等価であるが、このようにマーク3-01が1個も配置されないセルも情報として定義することができる。1個のセル内にマーク3-0の配置候補位置が8か所あることから、1個のセルに8bitの情報が定義できる。8bitの情報は、左から(8)、(7)、(6)、(5)、(4)、(3)、(2)、(1)の順にデータ化される。もちろん、この順番はどのように設定してもよい。マーク3-0による情報の定義について、図133(e),図133(f)は、それぞれ図133(c),図133(d)に区画と同じ形状と大きさのマークを区画領域に配置した実施例であるが、図133(e)では、10100011,図133(f)では、11010110の数値情報が定義されている。
 なお、区画方法は任意であり、区画の形状は、矩形の他、三角形、多角形や曲線で区画してもよい。また、どのような大きさや向きであってもよい。本実施例では、区画と同一形状のマークが区画を充填するように配置されているが、区画された領域のどこに配置してもよく、形成および読み取りができれば、マークはどんな形状や大きさ、向き、色、数でもよいし、さらに、同一セル内および区画に異なる形状や大きさ、向き、色、数のマークをどこに配置してもよい。
 基準点は、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて求めればよい。図134に格子線の引き方を示しているが、まず各特定セルの所定領域の基準点を仮想の線で繋ぐ。格子点の存在しないセルでは、仮想の格子線を内挿または外挿して格子点を求めればよい。
 (実施例9)
 図135は、所定の位置に配置されたセルにはマーク3-0を配置しないで、そのセルの所定領域2-0を、所定領域を除く領域2-1(セルと識別できる色と異なる色の領域)で囲むようにした基準セル1-1の実施例である。所定の位置は、コードリーダーに記憶させてもよいし、第1のコードに第2のコードのデータフォーマット情報として格納しておいてもよい。本実施例では、上から行番号、左から列番号とした場合、1行2列、3行6列、5行2列の所定の位置に基準セル1-11が配置されていることになる。いずれでも、セルの所定領域2-01を、所定領域を除く領域2-10で囲んでいるため、所定領域2-01を容易に抽出して、基準点の正確な座標値を求めて、実施例4と同様に、他の基準点の座標値の補正を行うことができる。この実施例では、暗色の所定領域2-01が配置され、マーク3-0を配置しない暗色特定セル1-01を基準セル1-11としたが、暗色特定セル1-01が必ずしも規則的に配置されるわけではないため、基準セル1-11が偏った配置となる場合もあり、複合コード全体を均一な基準点で補正ができない可能性がある。その欠点を補うのが実施例10である。
 基準点は、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて求めればよい。図136に格子線の引き方を示しているが、まず、破線で示すように、基準セルの基準点を仮想の線で繋ぐ。次に、図示しないが、図124と同様に交点の存在しない行および列では、内挿または外挿によって仮想の格子線を形成し格子点を求めればよい。
 (実施例10)
 図137は、図118のように2色の基準セル1-1を所定の規則で配置した実施例である。1行1列、5行6列の基準セル1-10では、明色の所定領域2-00が所定領域を除く暗色の領域2-11で囲まれ、1行6列、5行1列の基準セル1-11では、暗色の所定領域2-01が所定領域を除く明色の領域2-10で囲まれている。従って、実施例9などと同様に、所定領域2-01を容易に抽出して、基準点の正確な座標値を求めことができる。実施例9と比べると、暗色の所定領域2-01から算出される基準点も用いることができることから、基準セル1-1は、複合コードを形成するセル数にもよるが、10個~25個前後以上の間隔に配置すれば十分である。なお、基準セル1-1は、少なくとも特定セル1-0が配置される行および列に対して、少なくとも複数個配置されるのが望ましい。なぜなら、同じ行方向および列方向の基準セル1-1から算出された基準点を含むように格子線を引けば、その格子点から複合コード内の全ての基準点が正確に算出できるからである。基準セル1-1を矩形上に配置すれば、均一な精度で格子点を算出することも容易である。さらに、多数の特定セル1-0で形成される大型(大容量)の複合コードでは、格子状に基準セル1-1を配置すれば、確実に、複合コードが形成された媒体の湾曲や、複合コードをカメラで斜めに撮影した場合の変形にも追従でき、基準点の座標値を正確に算出して第1および第2のコードに定義されたデータを正確に算出することができる。なお、このような基準点の補正方法は、他の実施例全てに用いることができ、さらに、第2のコードを有しないQRコード等の従来の2次元コードのセルの位置情報の算出にも使用できる。
 基準点は、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて求めればよい。図138に格子線の引き方を示しているが、まず、破線で示すように、基準セルの基準点を仮想の線で繋ぐ。次に、図示しないが、図124と同様に交点の存在しない行および列では、内挿または外挿によって仮想の格子線を形成し格子点を求めればよい。
 (実施例11)
 図139は、特定セル1-0内における所定領域2-0およびマーク3-0との幾何学的関係を明示した基準パターンの実施例である。複合コードの所定の位置に配置された基準セル1-2において、i)1行1列と5行6列の基準セルの明色の所定領域1-20の左右・上下の区画に暗色基準マーク3-11,45度斜め方向の区画に明色基準マーク3-10が配置され、基準パターンが基準セル1-20に形成されている。ii)1行6列と5行1列の基準セルの暗色の所定領域1-21の左右・上下の区画に明色基準マーク3-10,45度斜め方向の区画に暗色基準マーク3-11が配置され、基準パターンが基準セル1-21に形成されている。上記、基準セル1-20と基準セル1-21のいずれでも所定領域2-0が矩形であり、周辺との境界を明暗で認識できることから正確に基準点の座標値を算出することができる。すなわち、上下左右に線上で境界を認識してもよいし、ドットを検出する方法でもよい。これにより、撮像された複合コードが大きく変形して第1のコードで算出される基準点の座標値にずれが生じても補正することができる。さらに、所定領域2-0のサイズ(基準マーク3-1と同一サイズ)も正確に認識できることから、所定領域2-0の周辺に配置される明色基準マーク3-10と暗色基準マーク3-11との境界から、それらのマーク3-0の中心座標値を正確に算出することができる。なお、基準点に対する各マーク3-0の配置のずれは、基準点の座標値のずれよりも少ないため、基準パターンは、複合コードを形成するセル数にもよるが、10個~25個前後以上の間隔に配置すれば十分である。
 基準点は、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて求めればよい。図140に格子線の引き方を示しているが、まず、破線で示すように、基準セルの基準点を仮想の線で繋ぐ。次に、図示しないが、図124と同様に格子点の存在しない行および列では、内挿または外挿によって仮想の格子線を形成し格子点求めればよい。さらに、基準パターンを定義するマークそれぞれの中心座標値も正確に求まるので、これらについても格子線を引いて補正に用いることができる。つまり、所定の領域以外のマークを用いて精密な補正をすることができる。図128よび図130の例についても、十分に高い解像度があれば、同様に格子線を引くことができる。
 (実施例12)
 図141は、実施例10の基準セル1-1に、向きが認識できるユニークな形状の所定領域2-01を図133(a)の区画で配置した実施例である。撮像された複合コードが大きく変形して正確な向きが認識できなくても、ユニークな形状の所定領域2-01により基準セル1-1における向きが正確に認識できる。なお、基準セル1-1の所定領域2-01の形状や大きさは、向きを認識できればどのような形状や大きさでもよい。特定セル1-0の向きのずれは、基準点の座標値のずれよりも少ないため、複合コードを形成するセル数にもよるが、基準セル1-1は10個~25個前後以上の間隔に配置すれば十分である。また、所定領域2-01の基準点は、基準セル1-1の中心とするのが望ましいが、その中心座標値の算出には、実施例1の計算式を補正して用いることができる。補正は、所定領域2-01の形状は、基準セル1-1の中心から上下方向に非対象であり、上部が2ピクセル,下部が4ピクセルで形成されていることから、2/(2+4)=1/3の1/2だけ下方にずれており、1/6ピクセルを加算すればよい。なお、左右対称であるためX座標値は補正の必要はない。本実施例では、所定領域に配置される基準点は、撮影した複合コードが記録されるフレームバッファ(XY座標軸を有する二次元画像一時記憶領域)において、実施形態10の図66~70の説明のように、2値化されたn個のピクセル(画素)で形成される所定領域2-0の中心座標値(X,Y)を、各ピクセルの中心座標値を(X,Y)として、X=(ΣX,i=1~n)/n,Yは、所定領域2-01の形状と配置を鑑み1/6ピクセルを加算して、Y=1/6+(ΣY,i=1~n)/nの計算によって求められる。このように、所定領域2-01がどのような形状・配置であっても、上記の補正によって基準点を求めることができる。
 図142に格子線の引き方を示しているが、所定領域の基準点が所定領域の図心ではなく、セルの中心と一致する場合の例として、まず、破線で示すように、基準セルの基準点を仮想の線で繋ぐ。次に、図示しないが、図124と同様に交点の存在しない行および列では、内挿または外挿によって仮想の格子線を形成し格子点を求めればよい。
 (実施例13)
 図143は、実施例11の基準セル1-2に方向を加えて、特定セル1-0内における所定領域2-0およびマーク3-0との幾何学的関係を明示した基準パターンの実施例である。実施例11と同様に、基準セル1-20と基準セル1-21のいずれでも所定領域2-0が矩形であり、周辺との境界を明暗で認識できることから正確に基準点の座標値を算出することができる。すなわち、上下左右に線上で境界を認識してもよいし、ドットを検出する方法でもよい。実施例11との差異は、i)1行1列と5行6列の基準セルの明色の所定領域1-20の左下45度斜め方向の区画に暗色基準マーク3-11を配置して、方向を示すユニークな基準パターンを形成している点、ii)1行6列と5行1列の基準セルの所定領域1-21の右下45度斜め方向の区画に明色基準マーク3-10を配置して、方向を示すユニークな基準パターンを形成している点にある。本実施例により、マーク3-1の配置パターンはユニーク(非回転対称)であるため、方向を認識することができ、実施例7と同様な効果を得ることができる。
 基準点は、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて求めればよい。図144に格子線の引き方を示しているが、まず、破線で示すように、基準セルの基準点を仮想の線で繋ぐ。次に、図示しないが、図124と同様に格子点の存在しない行および列では、内挿または外挿によって仮想の格子線を形成し格子点を求めればよい。さらに、基準パターンを定義するマークそれぞれの中心座標値も求まるので、図144と同様にこれらについても格子線を引いて補正に用いることができる。
 (実施例14)
 現行のスマートフォンなどのコードリーダーは、高解像度であるため、実施例8~実施例13のマーク3-0の大きさが半分(区画を2x2から1x2)でも十分に検知可能である。図145では、基準点の算出を精度よく行うために、所定領域2-0の大きさを実施例8~実施例13と同様に2x2の区画でとる一方で、前記マーク3-0を、実施例8~実施例13と比べて区画数を多くするために、半分の1x2の区画でとった実施例である。ここでは、図145(a)に示すように、図133(a)と同様に、6×6ピクセルを基準としているが、所定領域および各マークの大きさに合わせて1個のセルを区画化した具体例として、図145(b)を表記する。実施例8~実施例13の場合と同様に、特定セルの構成は6×6ピクセルに限られることはなく、形成および読み取りができれば、どのような大きさでもよいし、縦横異なる区画数でもよいし、また、各区画の形状や大きさ、向きもどのようなものでもよい。また、高い精度で基準点を算出するためには、所定領域がセルの中心の区画を占め、基準点がセルの中心にあるのが望ましいが、形成および読み取りができれば、どこにあってもよい。この具体例では、所定領域として縦横2x2の区画、マークとして縦横1x2の区画をとっているが、形成および読み取りができれば、どのような形状や大きさ、向き、位置でもよい。また、同じコード内でこれらが異なってもよい。この実施例における所定領域の特徴は、実施例8~実施例13の所定領域の特徴と同様である。
 図145(c)~図145(f)は、第2のコードによるデータの定義の方法を示している。中央の区画内に同一形状で位置する所定領域2-0は、図145(c)では、暗色2-01(黒色)、図145(d)では、明色2-00(白色)で形成されており、所定領域を除く領域2-1は、ここでは、明色2-10として示している。明色セルでは、セルの所定領域2-00(白色)と所定領域を除く領域2-10(白色)の境界を明示するため、矩形状の点線で示しているが、実際の複合コードにはこの点線は描かれない。図145(c)と図145(d)では、いずれでも、第1のコードのセルの基準点から、マークが配置される区画と同一の形状と大きさで、右上から一番目の区画を明色、二番目を暗色として、前者を明色の分離マーク、後者をデータの開始を示す暗色のヘッダーとして配置している。同様に、左下から一番目の区画を明色の分離マーク、二番目を暗色のヘッダーとして配置している。このように一番目に明色区画があるために、それぞれのヘッダーの抽出が容易となっており、データの開始位置が明確となるのみならず、マークの寸法が求まり、さらには各マークの位置などが精度よく認識できる。右側のヘッダーから外側の2列に関して右回りにマークの番号を(1)~(8)まで付し、さらに左側の列からの続きとして中央の列に(9)~(12)まで付し、これら12か所のマークの色によって情報を定義している。
 本実施例では、特定セル1-0の基準点はセルの中央に配置されているが、セルの色を識別できる位置であれば、基準点は所定領域2-0内のどこに配置されてもよい。
 図145(c),図145(d)には、マーク3-0の配置候補位置が区画を示す矩形状の実線で示され、番号を(1)~(12)まで付しているが、実際の複合コードには、この実線や番号は描かれない。また、特定セル1-0との幾何学的関係を分かりやすくするためセルの外枠を実線で示しているが、この外枠も実際の複合コードには描かれない。
 本実施例では、(1)~(12)のマーク3-0は、それぞれ明色3-00(0:ビット情報=0あるいはOFF、以下のカッコ内も同様)であるか暗色3-01(1:ビット情報=1あるいはON、以下のカッコ内も同様)であるかで、1bitの情報を定義している。明色3-00(0)であるか暗色3-01(1)であるかは、図145(e),(f)のマークの色を認識して識別している。マーク3-01が1個も配置されないセルも情報として定義することができる。1個のセル内にマーク3-0の配置候補位置が12か所あることから、1個のセルに12bitの情報が定義できる。12bitの情報は、マークの番号に従って(12)番目から(1)番目の順にデータ化される。もちろん、この順番はどのように設定してもよい。図145(e),図145(f)は、それぞれ図145(c),図145(d)に区画と同じ形状と大きさのマークを区画領域に配置して情報を定義した実施例であるが、図145(e)では、001010111010,図145(f)では、101101010101の数値情報が定義されている。
 図145(e),図145(f)には、さらに、データスキャンの方法の具体例も示されており、まず、右上から左下に向けて対角線に沿ってスキャンする。このスキャンでは、所定領域を対角線に沿って横切るので、所定領域の抽出と基準座標値の正確な算出ができる。さらに、左右両方の明色の分離マークおよび暗色のヘッダーを斜めに横切るので、それぞれの位置およびディメンジョンが求まる。ヘッダー情報が確定したら、次にそれを基にマーク番号に対応するように、右列を上から下へ、左列を下から上へ、そして、中央の列に関しては、まず上から所定領域に向けて、つづいて下から所定領域に向けてスキャンすることで、マークによって定義されるデータを読み取る。ここで挙げた例は、単なる例に過ぎず、形成および読み取りができれば、ヘッダーや分離マークをどこにおいてもよい。また、ヘッダーなどを置かずにデータ用のマークを増やしてもよい。また、マークをどのように配置してもよく、予め決めておけば、読み取る順番が各セルで異なってもよい。
 なお、区画方法は任意であり、区画の形状は、矩形の他、三角形、多角形や曲線で区画したものでもよい。また、本実施例では、区画に同一形状のマークが区画を充填するように配置されているが、区画された領域のどこに配置してもよく、形成および読み取りができれば、マークはどんな形状や大きさ、向き、色、数でもよく、さらに、同一セル内に異なる形状や大きさ、向き、色、数のマークを配置してもよい。また、特定セルすべてに情報データが入っている必要はなく、各セル中のマークにダミーマークがあってもよい。
 (実施例15)
 図146は、第2のコードにおいてセル内を6×6で区画した図133および図145に対して、8×8で区画した場合の所定領域とマークの配置例と情報の定義の方法を示している。図133および図145について説明した内容の内、下記では、重複した説明を省いているが、それらは本実施例でも適用でき、組み合わせて使用してよい。また、これらはあくまでも例であり、本実施形態における複合コードのセルは、これらに限定されない。
 図146(a),(d),(g),(j),(m)は、1個のセル内にマーク3-0の配置位置を点線で示した8か所に設けた実施例であり、1個のセルに8bitの情報が定義できる。8bitの情報は、左から(8)、(7)、(6)、(5)、(4)、(3)、(2)、(1)の順に1bitずつ数値化される。図146(p)は、1個の特定セル内の実線太線で示した所定領域2-0にマーク3-0の配置位置を点線で示した12か所に設けた実施例であり、1個の特定セル1-0に12bitの情報が定義できる。12bitの情報は、左から(12)、(11)、(10)、(9)、(8)、(7)、(6)、(5)、(4)、(3)、(2)、(1)の順に1bitずつ数値化される。上記、いずれのマークもスマートフォンの表示および300dpiによる印刷において2×2ピクセルで形成される。なお、600dpiによる印刷では、4×4ピクセルで形成される。なお、セル内の区画を示す実線細線および所定領域2-0を示す実線太線、マーク3-0を示す点線は複合コードには描かれない。
 図146(a)~図146(c)は、マーク3-0同士が接触しないように空隙を設け、所定領域2-0が4×4ピクセルで形成された実施例を示す。所定の方法で空隙を認識することにより、マークの配置を正確に取得できる。空隙の色は、マーク3-01と識別できればどのような色でもよい。空隙とマークの認識方法は複数の方法があるが、実施形態10の図66~図70や図145(e),図145(f)のように、空隙をまたぐようにして、直線上でマークの色の変化点を取得してマーク3-01を認識してもよい。なお、これまでに説明した他のマークの認識方法を用いてもよいし、組み合わせて認識の精度を上げてもよい。図146(b),図146(c)では、所定領域2-0が所定領域を除く明色の領域2-10で囲まれており、当該領域2-10にマーク3-01が配置されている。これにより、図146(b)では、10011101,図146(c)では、01101010の数値情報が定義されている。なお、本実施例では、所定領域2-0を大きめに配置していることから、多少基準点がずれていても、所定領域2-0に含まれるので、セルの色を識別できる。
 図146(d)~図146(f)は、図146(a)~図146(c)に対して、さらに、所定領域2-0がマーク3-01と接触しないように空隙を設け、所定領域2-0を2×2ピクセルで形成した実施例を示す。本実施例では、所定領域2-0とマーク3-01との幾何学的配置関係がより明確になり、マーク3-01の認識率を向上させることができる。しかし、所定領域2-01が小さいために基準点がずれていると特定セル1-0の色を誤認する可能性がある。なぜなら、セルの面積に対する所定領域の面積比が4/64=0.0625となり、カメラの光軸が複合コード形成面に対して傾いて撮影がされた場合に、面積比が1/10を下回ると、第1のコードの読み取りによってずれて算出された基準点の座標値が所定領域2-0に含まれなくなり、所定領域2-0の色とは異なる色が認識される場合があるからである。補正の方法としては、基準セル1-1や基準セル1-2を含む実施例9~13のように補正してもよいし、基準点近傍の色から所定領域2-01を認識して、当該所定領域2-01を基に基準点を補正し、さらに、所定領域2-01とマーク3-01との幾何学的配置関係からマーク3-01を認識してもよい。また、前述の空隙をまたぐようにして、直線上で所定領域2-01の色の変化点を取得して、所定領域2-01を認識してもよい。
 図146(g)~図146(i)は、図146(a)~図146(c)に設けた空隙部分を含めて形成させた所定領域2-0の実施例である。これにより、所定領域2-0の面積比が、特定セル1-0の面積(ピクセル数)に対して、(4×4+2×8)/(8×8)=1/2となる。若干数値情報が少なくなるが、所定領域2-0と同色のマーク3-0を少なくとも2個配置することにより、所定領域2-0と同色のマーク3-0の和が、特定セル1-0に対して(32+4×2)/64=0.625、すなわち、62.5%となり、セルの面積に対する所定領域の面積比が60%を超えることから、セル全体の色で識別するQRコードリーダーでQRコード部分を読み取ることができる。この場合の特定セル1-0が有する数値情報は、本来8bit=256だが、256-()=247となり僅か9減少するだけである。さらに望ましいのは、同色のマーク3-0を少なくとも3個配置することで、そのことにより、(32+4×3)/64=0.6875となり、面積比が2/3を超えることから、既存のQRコードリーダーでも確実にQRコード部分を読み取ることができる。この場合の特定セル1-0が有する数値情報は、256-()=219であり、大幅な数値情報の減少とはならない。上記により、セルの中心位置の色を識別する約半数の方法と、セル全体の色で識別する残り約半数の方法の両方のQRコードリーダーで、第2のコードの情報量を確保しつつ、複合コードのQRコード部分を読み取ることができ、汎用性が高まる。本実施例では、定義される数値情報において2進数で、マーク3-01は1、マーク3-00は0としているが、所定領域2-0と同色のマーク3-0を1とした場合は、図146(i)では、10010101の数値情報が定義されることになる。
 図146(j)~図146(l)は、当該特定セル1-0が、隣り合う他のセルとマーク3-01が接触しないように空隙を設けて、所定領域2-0が2×2ピクセルで形成された実施例である。これにより、マーク3-01と他のセルとを明確に識別して誤認を防ぐことができる。なお、所定領域2-0が2×2ピクセルで小さいことから、基準点が所定領域2-0に含まれない場合の可能性があるので、図146(d)~図146(f)の場合と同様な基準点の補正をすることが望ましい。
 図146(m)~図146(o)は、図146(j)~図146(l)に設けた空隙部分を所定領域2-0と同色の領域として分離させて所定領域2-0を形成させた実施例である。これにより、図146(g)~図146(i)と同様に、所定領域2-0と同色のマーク3-0を少なくとも2個または3個配置することにより、面積比がそれぞれ62.5%または2/3を超える値となることから、セル全体の色で識別するQRコードリーダーでQRコード部分を読み取ることができる。なお、所定領域2-0と同色のマーク3-0を1とした場合は、図146(i)と同様に、図146(o)では、0010101の数値情報が定義されることになる。本実施例も図146(g)~図146(i)と同じ数値情報の減少となるが大幅な減少はなく、第2のコードの情報量を確保しつつ、どのようなQRコードリーダーでも複合コードのQRコード部分を読み取ることができ、汎用性が高まる。
 図146(p)~図146(r)では、4×4ピクセルの所定領域2-0の周辺に、マーク3-01を最大12個配置させることが可能であり、マーク3-0を1とした場合は、図146(q)では010101100111,図146(r)では101101011010の数値情報が定義される。所定領域2-0と同色のマーク3-0を1とした場合は、図146(r)は、010010100101の数値情報が定義されることになる。近接した12個のマーク3-0を正確に認識するためには、基準点の座標値と、基準点とマーク3-0との幾何学的配置関係を正確に認識する必要がある。これらの認識方法は、既に実施例に記載したどのような方法で実施してもよい。
 図146(s)~図146(u)では、図146(p)~図146(r)の所定領域2-0を4×4ピクセルから2×2ピクセルにして、図146(d)~図146(f)のように所定領域2-0とマーク3-0の間に空隙を設けてもよい。その際、図146(t)では所定領域2-01を除く領域を明色領域2-10とし、図146(u)では所定領域2-00を除く領域を暗色領域2-11とすることにより、所定領域2-0を囲む識別可能な空隙を設けることができる。その結果、本実施例では、所定領域2-0と基準点が正確に認識可能となり、マーク3-0との幾何学的配置関係がより明確になり、マーク3-0の認識率を向上させることができる。このような所定領域2-0を囲む識別可能な空隙は、図146(d)~図146(f)に適用してもよい。
 (複合コード生成手順のフローチャート)
 図147のフローチャートを用いて複合コードの生成手順について説明する。例として、第1のコードとしてQRコードを用いる。
 図147に示す複合コードの生成手順としては、まず、格納する情報量に応じて、QRコードのバージョンを決め、そのバージョンに基づくセル配列を生成させる。ここで、誤り訂正レベルも決める。誤り訂正レベルは必要に応じて適宜変えればよい(U11)。次に、第1のコードの内のデータ領域(ファインダパターン、ファインダパターンの分離パターン、タイミングパターン、アラインメントパターンなどQRコードの補正等に不可欠な機能パターンやフォーマット情報、型番情報の領域などを除いた領域)のセルを所定数で区画する(U12)。それらのセルに所定領域を設定して、第1のコードのデータを定義する(U13)。そして、第2のコードに格納するデータに基づき特定セルを設定する。なお、第2のコードの特定セルとして使用しないセルは、区画しなくてもよく、所定領域の形状がセルと同一でもよい。つまり従来のQRコードのセルのままでもよい。第2のコードのデータフォーマット情報や特定セルインデックスなどは、読取り装置に含まれていてもよいし、第1のコードに格納してもいいし、第2のコードに格納してもよい。なお、第2のコードのデータフォーマット情報と第1のコードのセルインデックスを基に、第2のコードの特定セルインデックスを作成してもよい。あるいは、所定領域の形状、マークの有無で認識できるようにしてもよい。本来のQRコードの上記機能パターンを形成するセルに、特定セルを配置して第2のコードを格納してもよい(U14)。さらに、特定セルインデックスに従い、データを形成する各セルに定義される数値情報に基づき設定された区画にマークを配置する(U15)。読み取り順序情報を別途格納すれば、読み取り順序を変えてもよい。必要に応じて、基準点や基準パターンを定義する基準セルを配置する。その基準セルにも情報を定義してもよい(U16)。
 (複合コードにおける特定情報と特定領域)
 実施形態9の(複合コードの定義)に、「第2のコードは、前記第1のコードの少なくとも一部に対応する特定情報を含むとは、実施形態4、5と同様、第2のコードが、第1のコードであるバーコード、あるいは英数字、漢字、片仮名、平仮名等の文字列等で表されるデータをデジタル署名したものであることが例示される。」と記載されていることから明らかなように、特定情報はデジタル署名、つまり暗号化情報を含むことが記載されている。さらに、実施形態6の図47から図54で説明した電子認証の全てに対して、下記のケースも含むことの記載から、暗号化情報を含む特定情報は、QRコードを含む第1のコードおよび、ドットコードを含む第2のコードに格納してもよい。
・QRコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報を、ドットコードに格納
・QRコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報を、QRコードに格納
・ドットコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報を、QRコードに格納
・ドットコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報を、ドットコードに格納
・QRコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報をドットコードに、ドットコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報をQRコードに、それぞれ格納
・QRコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報をQRコードに、ドットコードのデータの符号化情報を暗号化手段で暗号化した暗号化情報をドットコードに、それぞれ格納
・QRコードのデータと、ドットコードのデータから形成されるデータ列の符号化情報を暗号化手段で暗号化した暗号化情報を、QRコードに格納
・QRコードのデータと、ドットコードのデータから形成されるデータ列の符号化情報を暗号化手段で暗号化した暗号化情報を、ドットコードに格納
 さらに、特定情報は暗号化情報に限らず、符号化情報を含んでもよく、同様に、実施形態6の図55および図56で説明した電子認証の全てに対して、下記のケースも含むことの記載から、符号化情報を含む特定情報は、QRコードを含む第1のコードおよび、ドットコードを含む第2のコードに格納してもよい。
・QRコードのデータの符号化情報をドットコードに格納
・QRコードのデータの符号化情報をQRコードに格納
・ドットコードのデータの符号化情報をQRコードに格納
・ドットコードのデータの符号化情報をドットコードに格納
・QRコードのデータの符号化情報をドットコードに、ドットコードのデータの符号化情報をQRコードに、それぞれ格納
・QRコードのデータの符号化情報をQRコードに、ドットコードのデータの符号化情報をドットコードに、それぞれ格納
・QRコードのデータと、ドットコードのデータから形成されるデータ列の符号化情報を、QRコードに格納
・QRコードのデータと、ドットコードのデータから形成されるデータ列の符号化情報を、ドットコードに格納
 上記のケースに限らず、第2のコードのデータフォーマット情報等、ユーザーが使用する情報(誤り訂正符号を含む)を形成するためのデータ以外の情報を特定情報として第1のコードおよび/または第2のコードに格納してもよい。また、特定情報は、第1および第2のコードの一部の領域に設定された特定領域に格納されるのが望ましい。なお、QRコードを第1のコードとして使用する場合、特定情報の格納に埋め草領域を使用してもよい。以上の特定情報および/または特定領域は、他の実施例と組み合わせて使用してもよい。
 (誤り訂正符号化と特定セルへのデータ格納)
 ここでの誤り訂正符号化とデータ格納の例を以下に示す。(1)本来のQRコードのデータ格納可能特定セル数を、ファインダパターン0-1やファインダパターンの分離パターン0-2、タイミングパターン0-5、アライメントパターン0-3、形式情報0-4などの引き算により導き出す。例えば、QRコードバージョン2では、375個でそれぞれ8ビットとして使えるので、格納可能な情報量は375バイトである。この場合は、タイミングパターン0-5(16)のセルにも特定セルとしての役割を持たせることで、データ格納可能セル数の375は、全セル数(25x25=625)からファンダーパターン0-1(49x3=147)、分離パターン0-2(15x3=45)、アライメントパターン0-3(25)、形式情報0-4(17+8x2=33)の各セル数の計250を引くことにより求まる。(2)使用するリード・ソロモン符号の個数を計算する。375/255+1=2、よって、各RS符号の符号長は375/2=187となる。(3)所定の割合の符号化率のリード・ソロモン符号で符号化する。GF(2)(n,k,d)=(187,148,40)から、符号化後の情報量は148x2=296バイトとなる。(4)インターリーブを行う。RS1[0],RS2[0],RS1[1],RS2[1],…の順番でデータを並べる。(5)データと同様に誤り訂正符号を、左上から右に向かって、段を下がって同様に左から右に向かって格納していく。すなわち、全体として、左上から右下に向かって格納する。
 以上の生成手順の順序はあくまでも例であり、複合コードの生成に支障がない限り、実施する順序を変えてもよい。また、実施形態2や3、6,7で説明されている手順を用いたり、組み合わせて用いたりしてもよい。
 この複合コードを印刷物にプリントしたり、スマートフォンなどのディスプレイで表示させたりして利用してもよい。
 (複合コード読み取り手順のフローチャート)
 図148~図151のフローチャートを用いて複合コードの読み取り手順について説明する。その複合コードは、印刷されたものでもいいし、スマートフォンなどのディスプレイに表示されたものでもよい。
 (読み取り手順A)
 図148では、第2のコードによる補正がない場合、つまり、本来の第1のコードによる補正要素のみで第2のコードのデータを取得することが可能な場合で、第1のコードの処理を行った後に第2のコードの処理を行う場合の読み取り手順を図示している。
 まず、読取り装置による複合コードの読取りをする(U21)。次に、その複合コードの第1のコードのセル配置を認識し、ついで、基準点を認識する(U22)。そして、第1のコードのセルインデックスに従って所定領域におけるセルの色を認識する(U23)。QRコードのセルインデックスは読取り装置に格納されているが、オリジナルコードの第1のコードである場合は、第1のコードのセルインデックスは、複合コードに格納されていてもいいし、読取り装置に格納されていてもよい。すべての第1のコードのセルの認識が終了するまで同様の処理を行う(U24)。次に、第1のコードの各セルの数値情報から統合情報(データ)を生成する(U25)。そして、第1のコードに対応する情報処理をする。データの中に、第2のコードのデータフォーマット情報などがあれば、以後の第2コードの処理の際に用いる(U26)。第2のコードのデータフォーマット情報に特定セルインデックスがあれば、特定セルインデックスを参照して特定セルかどうかを認識する(U27)。そして、第2のコードの特定セルインデックスに基づいてマークの形状や配置により定義された数値情報を取得する。複合コードのデータフォーマット情報に読み取り順序が規定してあれば、第1のコードの読み取り順序と異なる順序で読み取りをしてもよい(U28)。すべてのセルの読み取りが終了するまで同様の処理を行う(U29)。引き続き、第2のコードのデータフォーマット情報を基に第2のコードの特定セルの数値情報から統合情報(データ)を生成する(U30)。そして、第2のコードに対応する情報処理をする(U31)。
 従来のQRコードリーダーを用いて、複合コードの画像を撮影してQRコード部分のデータのみを取得して処理してもよいし、複合コードリーダーで複合コードの画像を読み取ってもよい。
 (読み取り手順B)
 図149では、第2のコードによる補正がない場合、つまり、本来の第1のコードによる補正要素のみで第2のコードのデータを取得することが可能な図146と同様な場合で、第1のコードのセルの処理中に第2のコードの特定セルの処理を実施する読み取り手順を図示している。
 まず、読取り装置による複合コードの読取りをする(U21)。次に、その複合コードの第1のコードのセル配置を認識し、ついで、基準点を認識する(U22)。そして、第1のコードのセルインデックスに従って所定領域におけるセルの色を認識する(U23)。QRコードのセルインデックスは読取り装置に格納されているが、オリジナルコードの第1のコードである場合は、第1のコードのセルインデックスは、複合コードに格納されていてもいいし、読取り装置に格納されていてもよい。各セルについて、第2のコードとして登録された特定セルかどうかを判断する。すなわち、特定セルインデックスを参照して特定セルであるかどうかを認識する(U29A)。そして、第2のコードの特定セルインデックスに基づいてマークの形状や配置により定義された数値情報を取得する(U28)。すべての第1のコードのセルの認識が終了するまで同様の処理を行う(U24)。次に、第1のコードの各セルの数値情報から統合情報(データ)を生成する(U25)。そして、第1のコードに対応する情報処理をする。データの中に、第2のコードのフォーマット情報などがあれば、以後の第2コードの処理の際に用いる(U26)。引き続き、第2のコードのデータフォーマット情報を基に第2のコードの特定セルの数値情報から統合情報(データ)を生成する(U30)。そして、第2のコードに対応する情報処理をする(U31)。
 図示しないが、U26とU31は、最後に一緒に実施してよい。
 従来のQRコードリーダーを用いて、複合コードの画像を撮影してQRコード部分のデータのみを取得して処理してもよいし、複合コードリーダーで複合コードの画像を読み取ってもよい。
 (読み取り手順C)
 図150では、先行して第2コードで基準点や基準パターンを定義する基準セルによる補正を行う場合で、図149と同様に第1のコードのセルの処理中にと第2のコードの特定セルの処理を実施する読み取り手順を図示している。
 まず、読取り装置による複合コードの読取りをする(U21)。次に、その複合コードの第1のコードのセル配置を認識し、ついで、基準点を認識する(U22)。ここで、所定の領域が配置された第2のコードの基準セルの所定領域を、第1のコードで算出される基準点の近傍から認識し、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて、基準点の補正を行う(U32A)。そして、第1のコードのセルインデックスに従って所定領域におけるセルの色を認識する(U23)。QRコードのセルインデックスは読取り装置に格納されているが、オリジナルコードの第1のコードである場合は、第1のコードのセルインデックスは、複合コードに格納されていてもいいし、読取り装置に格納されていてもよい。各セルについて、第2のコードとして登録された特定セルかどうかを判断する。すなわち、特定セルインデックスを参照して特定セルであるかどうかを認識する(U29A)。そして、第2のコードの特定セルインデックスに基づいてマークの形状や配置により定義された数値情報を取得する。基準パターンを含んで当該パターンのマークの形状や配置に基づき数値情報を取得してもよい(U28)。すべての第1のコードのセルの認識が終了するまで同様の処理を行う(U24)。次に、第1のコードの各セルの数値情報から統合情報(データ)を生成する(U25)。そして、第1のコードに対応する情報処理をする。データの中に、第2のコードのフォーマット情報などがあれば、以後の第2コードの処理の際に用いる(U26)。引き続き、第2のコードのデータフォーマット情報を基に第2のコードの特定セルの数値情報から統合情報(データ)を生成する(U30)。そして、第2のコードに対応する情報処理をする(U31)。
 図示しないが、U26とU31は、最後に一緒に実施してよい。また、図示しないが、読み取り手順Aと同様に、第1のコードの処理が終了していから第2のコードの処理をしてもよい。
 従来のQRコードリーダーを用いて、複合コードの画像を撮影してQRコード部分のデータのみを取得して処理してもよいし、複合コードリーダーで複合コードの画像を読み取ってもよい。
 (読み取り手順D)
 図151では、第2コードで基準点や基準パターンを定義する基準セルの代わりに、全てが基準点を単独で算出できる配置である特定セルの所定領域内にある基準点を基に補正を行う場合で、第1のコードのセルの処理中に第2のコードの特定セルの処理を実施する読み取り手順を図示している。図112~図114や図116~図117を用いて説明しているドットパターンを配置したセルおよび図146(d)~図146(f)や図146(s)~図146(u)を用いて説明している区画したセルなどによって構成されている複合コードがその例である。前記ドットパターンを配置したセルでは、所定領域と同一色マークが反対色の領域を介して隔てられており、さらに、所定領域と同一色マークのいずれもセルの境界と接していない。前記区画したセルでは、所定領域と同一色マークが反対色の領域を介して隔てられている。従って、ともに、所定領域の抽出が容易となっており、基準点の補正などもその観点から容易である。前記ドットパターンを配置したセルでは、隔たりのために、前記区画したセルでは、配置候補位置が固定であるため、マークの抽出も容易となっている。なお、第2のコードの所定領域を、第1のコードで算出される基準点の近傍から認識するのが望ましい。
 まず、読取り装置による複合コードの読取りをする(U21)。次に、その複合コードの第1のコードのセル配置を認識し、ついで、基準点を認識する(U22)。そして、第1のコードのセルインデックスに従って所定領域におけるセルの色を認識する(U23)。QRコードのセルインデックスは読取り装置に格納されているが、オリジナルコードの第1のコードである場合は、第1のコードのセルインデックスは、複合コードに格納されていてもいいし、読取り装置に格納されていてもよい。各セルについて、第2のコードとして登録された特定セルかどうかを判断する。すなわち、特定セルインデックスを参照して特定セルであるかどうかを認識する(U29A)。ここで、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて抽出された特定セルの所定領域に基づき、基準点の補正を行う(U32B)。そして、第2のコードの特定セルインデックスに基づいてマークの形状や配置により定義された数値情報を取得する(U28)。すべての第1のコードのセルの認識が終了するまで同様の処理を行う(U24)。次に、第1のコードの各セルの数値情報から統合情報(データ)を生成する(U25)。そして、第1のコードに対応する情報処理をする。データの中に、第2のコードのデータフォーマット情報などがあれば、以後の第2コードの処理の際に用いる(U26)。引き続き、第2のコードのデータフォーマット情報を基に第2のコードの特定セルの数値情報から統合情報(データ)を生成する(U30)。そして、第2のコードに対応する情報処理をする(U31)。
 図示しないが、U26とU31は、最後に一緒に実施してよい。また、図示しないが、読み取り手順Aと同様に、第1のコードの処理が終了していから第2のコードの処理をしてもよい。
 従来のQRコードリーダーを用いて、複合コードの画像を撮影してQRコード部分のデータのみを取得して処理してもよいし、複合コードリーダーで複合コードの画像を読み取ってもよい。
 以上の読み取り手順の順序はあくまでも例であり、複合コードの読み取りに支障がない限り、実施する順序を変えてもよい。また、実施形態2や3、6,7で説明されている手順を用いたり、組み合わせて用いたりしてもよい。
 (実施例16)時系列複合コード
 実施例1~実施例13のように、明色および暗色のいずれにも1セル当たり第2のコードとして8bitの数値情報を定義することにより、第1のコードの8倍以上のデータを格納できるが、第2のコードのみ時間変化する時系列データとすることにより、膨大なデータを格納できる。時系列データを形成するマーク3-0は、時間方向に形状、大きさ、色、配置位置等どのように変化させて情報量を増大させてもよい。ここで、第1のコードを変化させない理由は、第1のコードも変化させても容量を大幅に増加できないことと、従来のQRコードリーダー等で読取りできなくなってしまうからである。さらに、第1のコード内には第2のコード読むための諸々の情報が格納されているため、少なくとも一度だけ第2のコードを読むための諸々の情報(データフォーマット情報)を読み取れば、時間変化する第2のコードを読み取ることができるからである。但し、第1のコードで取得した各セルの基準点座標値を第2のコードで使用する場合は、複合コードをビデオまたは連写で撮影してフレームに複合コードが記録された際に、手振れ等で複合コードの撮像位置がずれる場合があり、ずれた分の補正をする必要がある。補正の方法としては、
i)図152で例示するように、複合コードの番号をi,最終複合コード番号をk,各セルを特定するセル番号をjとすると、先ず、最初に読み取って記録された複合コード(複合コード番号:i=1)の中心座標値(x,y)と回転角(θ)を求める。次に、その後に撮影して記録される複合コード(i=2~k)毎に、複合コードの中心座標値(x,y)と回転角(θ)を求めると、複合コード(i=1)に対する、以降の複合コード(1<i)の中心座標値の差分Δx=x-x,Δy=y-y,Δθ=θ-θが求まる。ここで、第1のコードで取得した各セルの基準点座標値を()とすると、複合コード(i=1)の中心座標値から各セルの基準点までの距離は、x,xであるから、複合コード番号iのセル番号jの基準点座標値()は、下式により求まる。

Figure JPOXMLDOC01-appb-I000001
 なお、手振れは殆どが平面的な移動・回転であり、上式はスマートフォン等の複合コードの表示装置の面に対して複合コード読み取り装置の光軸が傾かないことを前提とした近似式である。さらに、光軸の傾きも考慮に入れる場合は、撮像された複合コードの変形状況(例えば、コーナー4点の座標値から求まる変形)から、補正することもできる。
ii)最初の複合コード(i=1)の後に撮像された複合コード(i=2~k)毎に第1のコードを読み取って各セルの基準点座標値だけを算出して、第2のコードの各セルの基準点の座標値としてもよい。
iii)フレーム(i=1)の後にフレーム(i=2~k)毎に撮像された複合コードの第2のコードの基準セルに設けられた基準点や基準パターンに含まれる基準点、さらには、数値情報が格納された特定セルにおいて、算出可能な基準点を基に、実施形態5および実施形態10で説明する種々のアルゴリズムのいずれかを用いて、第2のコードの基準点座標値を求めてもよい。
 第2のコードの基準点座標値の補正方法として上記3種を説明したが、これらの基準点座標値として、QRコード等の2次元コードでは、各セルの中心座標値を用いてもよいことは言うまでもない。
 図153は、時系列複合コードの表示を示す時間軸(フレーム番号)を横軸にしたグラフであり、1秒間に60フレームを表示している。いずれでも、同じ番号の複合コードを数フレーム表示して、読取り装置で撮影して複数フレームを記録し、その中で良好に撮像された複合コードを読み取るようにしてもよい。図153(a)は、複合コード番号(1)~(10)で1つのデータを形成している。当該データを形成している10個(k=10)の複合コードは4フレームずつ表示されているが、表示装置のフレームレートと読取り装置のフレームレートおよびその品質により表示フレーム数を設定すればよい。1つのデータを形成する複合コードの個数(k個)は第1のコードに格納し、第2のコードにそれぞれの複合コードの当該番号を格納しておけばよい。これにより、読み取る順番を問わず、どこから撮影しても、k個の複合コードを連続して読み取ることができる。読み取り精度を高めるためにk個の複合コードを2回以上読み取って相互照合してエラーチェックを実施するようにしてもよい。時系列複合コードを表示するのは、1秒間に5~30フレームであり、時間方向に次に撮像された複合コードの各セルの基準点の位置のずれは極僅かであり、どのセルであるかは複数枚の撮像画像から、その僅かな基準点の移動を追跡して容易に認識できることから、セル番号の特定は難しくない。なお、表示装置のフレームレートをN(現行のスマートフォンのフレームレートNは60フレームが多い)とすると、時系列複合コードの表示回数がMで、M<Nの場合、同じ複合コードはN/Mフレームで連続して表示されることになる。なお、同じ複合コードを連続してLフレームずつ表示するように設定してもよい。図153(a)~図153(c)のいずれでも、同じ複合コードを連続して、4フレームずつ表示している。図153(b)では、データを形成している10個の複合コードの表示が終了すると、所定フレーム数において、第1のコードのみを表示し第2のコードを表示しないようにしてデータの終了を意味する情報を表示している。その後、データを形成している10個の複合コードが再表示される。この所定フレームには、複合コードとは無縁の画像を入れてもよいし、他の形式でヘッダー等の情報を格納してもよい。但し、この場合は、既存のQRコードリーダーでは読めなくなる。さらに、このデータを形成している複合コードの個数kやk個で形成されるデータの表示回数(何回目に表示しているかなど)などを格納してもよい。なお、この所定のフレームにヘッダーとして第2のコードを含めて、上記の情報の他、エラーチェック用のデータや電子署名のための情報等を格納してもよい。この所定のフレーム数はいずれも4フレームとしているが、読取り可能であればどのように設定してもよいし、複合コード(1)の前にも設定してもよい。なお、この所定フレームをまたいでk個の複合コードを読み取ってもよいことは言うまでもない。図153(c)のように、複合コードを表示させないでコードの変化点を認識できるようダミーコードを配置してもよい。このダミーコードは、単色であることが望ましい。複合コードで使用する色や複合コードの周辺色であれば、なお望ましい。また、第1のコードを継続して認識できるように、第1のコードをダミーコードとして用いてもよい。これにより、撮影時のモーションブラー等を抑制できる場合がある。図153(c)では4フレームであるが、その効果が得られれば、フレーム数は問わない。さらに、その所定フレームに、第1のコードのみを表示させるようにしてもよい。そうすれば、第1のコードがQRコードのような既存の二次元コードであれば、当該二次元コードリーダーでどのようなタイミングでも読み取ることができる。
 時系列複合コードの読み取りは、図153のように第2のコードを時間軸上にデータi=1~kを形成して表示するが、第2のコードの一部または全部を読み取ることができない場合があり、その場合は、時系列データの時間軸上において、フレーム間に相関を持たせ誤り訂正符号化を行うことで形成されたデータを完全に復号することができる。この際に、i)数値情報が格納された特定セルの同じ位置(同じセル番号を有する特定セル)に配置されている1個毎の時系列数値情報に対して、誤り訂正を行ってもよい。つまり、当該セルの時系列数値情報として、時間軸上の所定のフレームにだけ誤り訂正符号を設ける。ii)一方、複数の特定セルに対して、当該セルの時間軸上のフレームの全てに誤り訂正符号を設けてもよい。また、従来の誤り訂正のように、フレーム毎の複合コードの所定の領域に配置される複数の特定セルに対して、当該フレームに定義された第2のコードの誤り訂正符号を設けてもよい。なお、i)とii)および従来の誤り訂正をどのように組み合わせて、誤り訂正符号化を行ってもよい。
 以下、実施形態11で説明した複合コードの利用方法の例について説明する。実施形態6、実施形態7および実施形態9で説明した真贋判定や電子署名をはじめとして、利用方法に制限がないことは言うまでもない。
 (実施例17)次世代決済システム(1)
 店舗側でPOSシステム(スマートフォンやタブレットの簡易POSシステムでもよい)に購入商品を入力すると、ディスプレイに複合コードが表示される。購入者はスマートフォンの決済用専用アプリを起動させて複合コードを読み取ると、購入商品や金額等が表示される。間違いがないことを確認して決済ボタンをタップすると、購入者のスマートフォンには引き落としを可能にする内容の複合コードが表示され、店舗側の複合コードリーダー(専用リーダの他、スマートフォンやタブレット、また、それらに接続されたカメラでもよい)でそれを読み取り、決済会社が承認すると、所定の時期に決済がされる。決済用専用アプリが、常に残高や利用枠を認識していれば、決済可能であるかどうかも含めて電子署名された複合コードにデータを格納して購入者のスマートフォンに表示させることができる。従って、ネットを介した承認等を店舗側のPOSシステムが受け取る必要がなく、災害時やネットに障害がある場合でも決済が可能である。店舗側も対応する専用決済アプリにより、購入者のスマートフォンに表示された複合コードを読み取れば、その場で決済会社に承認を取らなくてもよい。その後に必要情報を基にネットによる決済が実施されてもよい。さらに、セキュリティを強化するため、購入者のスマートフォンに表示された複合コードに本人の顔写真を格納するようにすれば、店舗側は本人確認を同時に実施することもできる。本人の顔写真を所定の時間のみ表示させることで、データが店舗側に残らないようにして個人情報の漏洩を防ぐようにしてもよい。
 (実施例18)次世代決済システム(2)
 店舗側でPOSシステム(スマートフォンやタブレットの簡易POSシステムでもよい)に購入商品を入力すると、ディスプレイに複合コードが表示される。購入者はスマートフォンの決済用専用アプリを起動させて複合コードを読み取ると、購入商品や金額等が表示される。間違いがないことを確認して決済ボタンをタップすると、複合コードに格納されていた店舗側POSの無線ポイント(アドレス)とWIFIやBLE,BT等で接続され、購入者のスマートフォンから決済情報が送信される。ここで、決済用専用アプリが常に残高や利用枠を認識するようにすれば、購入者のスマートフォンと店舗側POSとをローカルで無線接続することによって、ネットを介した承認等を購入者のスマートフォンで受ける必要がなく、災害時やネットに障害がある場合でも決済を可能にできる。さらに、店舗側POSの無線ポイントもワンタイムパスワードのように毎回、変更させてもよい。変更の方法としては、時間依存にしたり、複数の無線ポイントから使用する無線ポイントをランダムに選択するようにしてもよい。店舗側も対応する専用決済アプリにより、購入者のスマートフォンから送信された決済情報を認証するようにすれば、その場で決済会社に承認を取らなくてもよい。その後に必要情報を基にネットによる決済が実施されてもよい。また、購入者のスマートフォンから店舗側POSの無線ポイント(アドレス)にWIFIやBLE,BT等で接続して決済情報を送信した後に、従来のクレジットカードのように、店舗側POSに接続されたディスプレイに購入者がサインをするようにしてもよい。もちろん、スマートフォンやタブレットのタッチパネルに指やスタイラスペンでサインするようにしてもよい。さらに、実施例17と同様に、複合コードに本人の顔写真を格納し本人確認をするようにしてもよい。
 (実施例19)チケット本人確認システム
 コンサートやイベント、交通チケット等、様々なチケットにおいて、転売や‘なりすまし’を防止するために、チケット取得時にスマートフォンで本人写真を撮影して、複合コードに取得チケット情報と共に本人写真を格納する。チケット使用時に、チケット発行者側がチケット使用者のスマートフォンに表示された複合コードを読取り、取得チケット情報の認証と、表示された顔写真による本人確認を同時に実施することによって転売や‘なりすまし’を防止できる。第三者がチケットを取得して本人に提供することを許可する場合は、本人写真をその第三者に提供するようにすればよい。また、取得者が本人の場合、自身の撮影済み写真を選択することができる。さらに、チケット使用者の顔の近傍に、複合コードが表示されたスマートフォンを向けた状態で、超高精度のカメラを搭載した複合コードリーダーでチケット使用者の顔と複合コードを同時に読み取ることにより、チケット使用者の顔と複合コードリーダーに格納された顔写真とを顔認証すれば同一人物であるかの確認が自動で可能となる。もちろん、チケット使用者の顔の撮影と複合コードリーダーに格納された顔写真の読み取りは別のデバイスで行ってもよい。顔の照合に替えて、自身の指の腹を撮影して複合コードリーダーに格納しておき、本人の指の腹と複合コードを同時に読み取ることによって指紋の照合をするようにしてもよい。
 (実施例20)本人確認アプリ
 第三者が本人確認するための専用アプリであり、様々なシーンで第三者が本人確認できるように複合コードに本人の顔写真を格納する。本人確認アプリに本人情報を登録する際に、本人の写真を撮影する他、住民票住所、戸籍、マイナンバー、保険証、免許証、パスポート、学生証、社員証等の所定の個人情報を入力または撮影して登録し、本人であることを、専用アプリ提供機関が承認する。本人写真が掲載された免許証やパスポート等を同時に撮影して、複合コードに格納された本人写真と照合すればなお望ましい。年齢と共に顔が変化し、本人を認識しづらくなる。そこで、定期的に本人の写真を取り直すように、本人確認アプリが音声やテキスト等のアラームで本人に知らせる。その際に、撮影した写真と複合コードに格納されている写真とを照合して、同一人物として承認できない場合は、‘なりすまし’として判断し、本人確認アプリが使用できないようにする。このように、顔の変化を辿るために定期的に本人の写真を撮影して複合コードに格納すれば、第三者が本人であることを確認できない程の顔の変化にはならない。不定期的にも、化粧の変化や整形による大きな顔の変化がある場合でも、本人所有のスマートフォンで自撮りや第三者が撮影した本人の顔写真を本人確認アプリが常に自動的に認識し、顔に大きな変化を検知した場合は、本人の写真を取り直すようにアラームで本人に知らせればよい。さらに、直近の自撮りや第三者が撮影した本人の顔写真を複合コードに格納してもよい。なお、静止画複合コードでは、本人を識別できるレベルのカラー写真を格納することができるが、時系列複合コードではより鮮明なカラー写真や短い動画を格納することができる。
 (実施例21)移動情報提供手段
 バスや鉄道等の移動手段において、そのルートや駅および近辺の施設、観光等様々な情報を複合コードに格納して、車内や駅に掲示することにより乗客は本来のQRコードには収まり切らない情報を複合コードからスマートフォンで取得することができる。複合コードをディスプレイに表示すれば、移動中の位置も含めて、移動時に変化する天気等の情報も取得することができる。これまでの車内に設置されたディスプレイでの情報提供では、自分の知りたい情報を自分で選択できなかったが、複合コードには様々な情報がリンクされており、スマートフォンを使用して好みの情報を取得することができる。また、タクシーを使用した際も出発地点から到着地点までのルートやタクシー代を複合コードに格納し、タクシー側のディスプレイで表示することにより、乗客は適切なルートで移動したかを確認でき、複合コード決済を適正に実施できる。このサービスが普及することにより、‘ぼられる’ことも抑止できる。乗客側も専用の移動地図アプリと連動させて、どのルートで目的地に移動したいかを複合コードに格納して、運転手の複合コードリーダーで読み取り、ナビによる表示や音声出力により、的確に乗客の希望するルートを運転手に伝えることができる。
 本発明にかかる複合コードによれば、第1のコードのみの場合に比べ、第1のコードの領域内に第2のコードを格納することにより、同じコード領域で多量の情報を格納することが可能になる。
 例えば、第1のコードがQRコードであり、第2のコードがドットコードである複合コードを印刷した場合には、QRコードのみを印刷した場合と比較して10倍以上、複合コードをスマートフォン等の画面に表示した場合には、ドットコードにカラー情報を付与し時間変化させることにより、QRコードの100倍以上の情報を格納することができる。
 多量の情報量を格納できることから、インターネットを使用せずとも、数千文字の和文や写真、音声情報等も格納でき、文書管理からエンターテーメント、教育、観光まで幅広く活用できる。さらに、従来のQRコードリーダーでQRコード、すなわち第1のコー、に格納されたデータを読み取ることができる。
 また、本発明にかかる複合コードは、各種の認証に用いることに適している。例えば、電子署名やURLの真贋判定を可能にするQRコードの印刷や、自身が保有するスマートフォンに自身の生体情報を格納したQRコードを表示し、相手方(装置も含む)が読み取ることにより本人確認等が容易にできる。
 さらに、現在、QRコードは、その仕様を開示しているため、誰でも発行することが可能となっており、第三者が同一のコードを発行することができる。しかし、本発明にかかる複合コードでは、QRコード等に加えて、秘匿された新たなアルゴリズムでドットコード等のマーク(第2のコード)が形成されるため、ユニークな複合コードを発行することが可能となり、第三者により同一のコードが発行される可能性は極めて低く極めてセキュリティ性が高い。さらに、QRコードは複写や模倣が容易であり、QRコードに格納された情報を、ショルダーハッキング等により意図せぬ第三者に取得されてしまう可能性がある。しかし、複合コードでは、第2のコードは目視しにくく、模倣も困難である。
 以上のように、本発明にかかる複合コードは、従来の1次元および2次元コードでは実現できない多くの利点を有している。
 <その他の態様>
 本実施形態は、さらに以下の態様を含む。
 (態様1)
 複数のセルが配列形状に配置され、それぞれが所定領域を有し、該所定領域にそれぞれが互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードと、
 前記複数のセルの少なくとも一部に前記所定領域を除く領域を有する特定セルを形成し、該所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードと、
を備えた複合コード。
 (態様2)
 前記所定の位置における前記マークの配置の有無により前記データが定義される
 態様1に記載の複合コード。
 (態様3)
 前記所定領域は、任意の形状である、
 態様1または2に記載の複合コード。
 (態様4)
 前記複数のセルの内、前記特定セル以外のセルの少なくとも一部が、前記所定領域と該所定領域を除く領域を有し、それぞれが互いに識別可能な色を有する、
 態様1~3のいずれかに記載の複合コード。
 (態様5)
 前記所定領域は、前記所定領域を除く領域に囲まれ、それぞれが互いに識別可能な色を有する、
 態様3に記載の複合コード。
 (態様6)
 前記複数のセル内の所定領域は、それぞれのセルの色を認識するための基準点を含む、
 態様1~5のいずれかに記載の複合コード。
 (態様7)
 前記マークの配置位置は、少なくとも前記特定セルおよび該特定セル以外のセルの少なくとも一方の前記基準点を基に設定される、
 態様6に記載の複合コード。
 (態様8)
 前記マークの配置位置は、少なくとも前記特定セルの前記基準点から所定方向に所定間隔を設けて設定される、
 態様6に記載の複合コード。
 (態様9)
 前記基準点として識別可能な前記所定領域から算出された中心座標値を基に、他の前記複数のセルの基準点の座標値が算出される、
 態様6に記載の複合コード。
 (態様10)
 識別可能な前記マークの配置位置と前記基準点および第2のコードの向きを含み形成される基準パターンが前記複数のセルのいずれかに配置される、
 態様6~9のいずれかに記載の複合コード。
 (態様11)
 前記基準パターンを基に、前記複数のセルの基準点からの前記マークとの幾何学的関係と前記第2のコードの向きを基に、前記データが定義される、
 態様10に記載の複合コード。
 (態様12)
 前記第2のコードの向きは、前記基準パターンを形成するマークの形状、配置および、2以上の大きさの異なるマークのいずれかにより定義される、
 態様10または11に記載の複合コード。
 (態様13)
 前記第2のコードの向きは、前記第1のコードの向きと同一である、
 態様6~12のいずれかに記載の複合コード。
 (態様14)
 前記基準点は、それぞれの前記セルの中心である、
 態様6~9のいずれかに記載の複合コード。
 (態様15)
 前記基準点は、それぞれの前記セルの所定領域の中心である、
 態様6~14のいずれかに記載の複合コード。
 (態様16)
 前記複合コードが撮影されて記憶装置にXY座標軸を有する2次元撮像画像(X,Y)において、n個のピクセルとして2値化された前記所定領域の中心(XC,)は、n個(i=1~n)のピクセルの座標値をD(X,Y)とすると、X=(ΣX,i=1~n)/n,Y=(ΣY,i=1~n)/nである、
 態様15に記載の複合コード。
 (態様17)
 前記所定領域の面積は、それぞれの前記セルの面積の1/10以上である、
 態様1~16のいずれかに記載の複合コード。
 (態様18)
 前記所定領域の面積は、それぞれの前記セルの面積の1/20以上である、
 態様1~16のいずれかに記載の複合コード。
 (態様19)
 前記複数のセル内の所定領域の色は、それぞれのセルの色として認識できるだけの所定の面積を有する、
 態様1~18のいずれかに記載の複合コード。
 (態様20)
 前記それぞれのセルの色は、前記識別可能な2以上の色のいずれかの色の濃度を所定量含むことによって、それぞれが互いに識別可能である、
 態様1~19のいずれかに記載の複合コード。
 (態様21)
 前記所定領域の面積は、それぞれの前記セルの面積の60%程度以上である、
 態様1~20のいずれかに記載の複合コード。
 (態様22)
 前記マークの色は、該マークが配置されるそれぞれの前記所定領域と同一色を含む、
 態様1~21のいずれかに記載の複合コード。
 (態様23)
 前記マークの配置位置は、少なくとも前記特定セルの前記所定領域を除く領域を任意の形状で区画した領域のいずれかに設定される、
 態様1~22のいずれかに記載の複合コード。
 (態様24)
 前記マークの形状は、前記区画した領域と同一形状であり、該区画した領域内は同一色を有する、
 態様23に記載の複合コード。
 (態様25)
 前記マークは、該マークが配置される前記所定の位置または該所定の位置を含む領域に、前記所定領域が有する色と互いに識別可能な2以上の色のいずれかをそれぞれに有する、
 態様1~24のいずれかに記載の複合コード。
 (態様26)
 前記第2のコードは、前記マークの形状、大きさ、色、向き、配置パターンの少なくともいずれか1つにより、データが定義される、
 態様1~25のいずれかに記載の複合コード。
 (態様27)
 前記マークの形状は、任意の形状である、
 態様26に記載の複合コード。
 (態様28)
 前記マークの色は、該マーク同士識別可能な少なくとも赤、緑、青、シアン、マゼンダ、黄、黒、白および前記所定領域の色のいずれかを含む、
 態様1~27のいずれかに記載の複合コード。
 (態様29)
 前記マークの大きさは所定の距離から視認しづらい大きさのマークである、
 態様1~28のいずれかに記載の複合コード。
 (態様30)
 前記複合コードは、媒体に形成されるか、電子媒体、放送媒体、記憶媒体または通信媒体等からの出力により表示装置に表示されるか、または電子媒体内にデジタル情報で形成される、
 態様1~29のいずれかに記載の複合コード。
 (態様31)
 少なくとも前記第2のコードが複数のコードで形成され、
 前記複数のコードは、時系列データとして表示装置に時間軸方向に所定の順に表示されるか、または前記媒体の所定の位置に形成される、
 態様30に記載の複合コード。
 (態様32)
 前記時間軸方向に所定の順に表示される複数のコードの間には、非表示の所定時間を含む、
 態様31に記載の複合コード。
 (態様33)
 複数のセルが配列形状に配置され、それぞれが所定領域を有し、該所定領域にそれぞれが互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードと、
 前記複数のセルの少なくとも一部を形成する特定セル内において、前記所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードと、
を備えた複合コードであって、
 前記第1のコードおよび前記第2のコードの少なくとも一方に設けられる特定領域には、前記第1のコードおよび前記第2のコードのうちの少なくとも一方のコードのうちの該特定領域を除いた領域の少なくとも一部に対応する特定情報を含む複合コード。
 (態様34)
 態様1~32のいずれかに記載の前記マークの少なくとも一つが形成されている、
 態様33に記載の複合コード。
 (態様35)
 前記特定領域を除いた領域の少なくとも一部には、少なくとも氏名、性別、生年月日、住所、戸籍、生体情報等、個人を特定する情報を含む、
 態様33または34に記載の複合コード。
 (態様36)
 前記特定情報は、前記特定領域を除いた少なくとも一部を符号化手段により符号化した符号化情報である、
 態様33~35のいずれかに記載の複合コード。
 (態様37)
 前記特定情報は、前記符号化情報が、暗号化手段により暗号化された暗号化情報である、
 態様36に記載の複合コード。
 (態様38)
 前記暗号化情報は、復号化手段により、前記符号化情報に復号できる、
 態様37に記載の複合コード。
 (態様39)
 前記特定領域を除いた少なくとも一部には、情報処理装置に前記復号化手段として実行させるためのプログラムが含まれる、
 態様38に記載の複合コード。
 (態様40)
 前記暗号化情報は、前記暗号化手段で秘密鍵を用いて符号化情報を暗号化した情報であり、
 前記復号化手段は、公開鍵を用いて前記暗号化情報を復号化する、
 態様38または態様39のいずれかに記載の複合コード。
 (態様41)
 前記符号化手段はハッシュ関数であり、
 前記ハッシュ関数により符号化した符号化情報はハッシュ値であり、
 前記暗号化手段により暗号化された暗号化情報は暗号化されたハッシュ値であり、
 前記暗号化されたハッシュ値は、前記復号化手段により前記ハッシュ値に復号できる、
 態様38~40のいずれかに記載の複合コード。
 (態様42)
 前記特定情報は、前記少なくとも一方のコードのうちの前記特定領域を除いた少なくとも一部が表す情報または前記符号化情報を基に電子署名手段によって作成された電子署名情報であり、前記電子署名情報は、検証手段により前記少なくとも一方のコードのうちの前記特定領域を除いた少なくとも一部が表す情報と所定の関係にあることが検証可能である、
 態様36~41のいずれかに記載の複合コード。
 (態様43)
 前記複合コードを明示するためのマーク、グラフィックスまたはテキストの少なくともいずれかが、前記第1のコードの内部に形成された、
 態様1~42のいずれかに記載の複合コード。
 (態様44)
 態様33~42のいずれかに記載の複合コードが形成または表示された媒体。
 (態様45)
 態様33~42のいずれかに記載の特定領域を除いた少なくとも一部は、前記媒体上に形成された文字および画像の少なくとも一つに対応する情報をデータ化したものであり、該情報の近傍または内部に前記複合コードが形成された、
 態様44に記載の媒体。
 (態様46)
 態様1~43のいずれかに記載の複合コードに含まれる、
 前記第1のコードを取得する第1の取得手段と、
 前記第2のコードを取得する第2の取得手段と、
を備える、複合コード読取り装置。
 (態様47)
 態様6~18のいずれかに記載の前記所定領域に含まれる基準点を基に、
 前記第2のコードが取得される、
 態様46に記載の複合コード読取り装置。
 (態様48)
 前記第1の取得手段で取得した前記セルの基準点を、
 前記第2の取得手段で取得した前記基準点の座標値に基づいて補正して、
 前記第2のコードを読み取る、
 態様47に記載の複合コード読取り装置。
 (態様49)
 態様10~12のいずれかに記載の前記基準パターンを用いて、
 前記マークの配置候補位置を補正して、
 前記第2のコードを読み取る、
 態様47または48に記載の複合コード読取り装置。
 (態様50)
 前記第1のコードおよび前記第2のコードの少なくとも一方には、個人を特定する情報を含み、
 前記個人を特定する情報は、少なくとも氏名、性別、生年月日、住所、戸籍、生体情報のいずれかに関する情報である、
 態様46~49のいずれかに記載の複合コード読取り装置。
 (態様51)
 生体情報を取得する第3の取得手段と、
 前記第3の取得手段で取得した生体情報と、
 前記個人を特定する情報と照合して、その正否を出力する出力手段と、
を備える態様50に記載の複合コード読取り装置。
 (態様52)
 前記第1の取得手段、前記第2の取得手段、前記第3の取得手段および前記出力手段の少なくとも一つは、1または複数のプロセッサーの処理によって機能する、
 態様51記載の複合コード読取り装置。
 (態様53)
 態様36に記載の符号化手段と同一の符号化が可能な第2の符号化手段を備え、
 態様33~42のいずれかに記載の特定領域を除いた少なくとも一部を、前記第2の符号化手段により第2の符号化情報に符号化する、
 態様46~52のいずれかに記載の複合コード読取り装置。
 (態様54)
 復号化手段を備え、
 態様37に記載の暗号化手段により暗号化された暗号化情報を、前記復号化手段により、態様36に記載の符号化情報に復号する、
 態様46~53のいずれかに記載の複合コード読取り装置。
 (態様55)
 公開鍵を有し、
 前記暗号化情報は、前記暗号化手段で秘密鍵を用いて符号化情報を暗号化した情報であり、
 前記復号化手段は、前記公開鍵を用いて前記暗号化情報を復号化する、
 態様54に記載の複合コード読取り装置。
 (態様56)
 態様53に記載の第2の符号化手段で符号化した第2の符号化情報と、
 前記復号化手段で復号した符号化情報と、を照合して態様33に記載の特定情報の正否を判定する、
 態様54~55のいずれかに記載の複合コード読取り装置。
 (態様57)
 コンピュータが、複数のセルが配列形状に配置され、それぞれが所定領域を有し、該所定領域にそれぞれが互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードを生成する第1の生成ステップと、
 前記複数のセルの少なくとも一部を形成する特定セル内において、前記所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードを生成する第2の生成ステップと、を実行し、
 態様1~43のいずれかに記載の複合コードを生成する、複合コード生成方法。
 (態様58)
 コンピュータが、複数のセルが配列形状に配置され、それぞれが所定領域を有し、該所定領域にそれぞれが互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードを取得し、
 前記複数のセルの少なくとも一部を形成する特定セル内において、前記所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードを取得する複合コードの読み取り方法であって、
 態様1~43のいずれかに記載の複合コードを読取る複合コード読取り方法。
 (態様59)
 コンピュータに、複数のセルが配列形状に配置され、それぞれが所定領域を有し、該所定領域にそれぞれが互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードを生成する第1の生成ステップと、
 前記複数のセルの少なくとも一部を形成する特定セル内において、前記所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードを生成する第2の生成ステップと、を実行させる複合コード生成プログラムであって、
 態様1~43のいずれかに記載の複合コードを生成する複合コード生成プログラム。
 (態様60)
 コンピュータが、複数のセルが配列形状に配置され、それぞれが所定領域を有し、該所定領域にそれぞれが互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードを取得し、
 前記複数のセルの少なくとも一部を形成する特定セル内において、前記所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードを取得する複合コードの読み取りプログラムであって、
 態様1~43のいずれかに記載の複合コードを読取る複合コード読取りプログラム。
 (態様61)
 複数のセルが配列形状に配置され、それぞれが所定領域を有し、該所定領域にそれぞれが互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードを生成する第1の生成手段と、
 前記複数のセルの少なくとも一部を形成する特定セル内において、前記所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードを生成する第2の生成手段と、
を備えた複合コード生成装置であって、
 態様1~43のいずれかに記載の複合コードを生成する複合コード生成装置。
  10 情報処理装置
  11 CPU
  12 主記憶装置
  13 外部記憶装置
  14 表示装置
  15 操作部
  16 通信インターフェース
  17 画像入力インターフェース
  18 画像出力インターフェース
  CS1、CS2 コンテンツサーバ
  MS1 管理サーバ
  UD1、UD2 ユーザー装置
  0-0 クワイエットゾーン
  0-1 ファインダパターン(位置検出パターン)
  0-11 右上のファインダパターン
  0-12 左上のファインダパターン
  0-13 右下のファインダパターン
  0-2 分離パターン
  0-3 アライメントパターン(位置合わせパターン)
  0-4 形式情報(フォーマット情報)
  0-5 タイミングパターン
  1-0 特定セル
  1-00 明色の特定セル
  1-01 暗色の特定セル
  1-1  基準点を定義する基準セル
  1-10 基準点を定義する明色の基準セル
  1-11 基準点を定義する暗色の基準セル
  1-2 基準パターンを定義する基準セル
  1-20 基準パターンを定義する明色の基準セル
  1-21 基準パターンを定義する暗色の基準セル
  2-0 セルの所定領域
  2-00 セルの明色所定領域
  2-01 セルの暗色所定領域
  2-1 セル内の所定領域2-0を除く領域
  2-10 セル内の所定領域2-0を除く明色領域
  2-11 セル内の所定領域2-0を除く暗色領域
  3-0 情報を定義するマーク
  3-00 情報を定義する明色マーク
  3-01 情報を定義する暗色マーク
  3-1 基準パターンを定義するマーク
  3-10 基準パターンを定義する明色基準マーク
  3-11 基準パターンを定義する暗色基準マーク

Claims (61)

  1.  複数のセルが配列形状に配置され、該複数のセルのそれぞれのセルが所定領域を有し、該所定領域に互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードと、
     前記複数のセルの少なくとも一部に前記所定領域を除く領域を有する特定セルを形成し、該所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードと、
    を備え、
     前記特定セルは、前記2以上の色のいずれの色のセルにも形成される、複合コード。
  2.  前記所定の位置における前記マークの配置の有無により前記第2のコードの前記データが定義される
     請求項1に記載の複合コード。
  3.  前記所定領域は、任意の形状である、
     請求項1または2に記載の複合コード。
  4.  前記複数のセルの内、前記特定セル以外のセルの少なくとも一部が、前記所定領域と該所定領域を除く領域を有し、互いに識別可能な色を有する、
     請求項1~3のいずれかに記載の複合コード。
  5.  前記所定領域は、前記所定領域を除く領域に囲まれ、互いに識別可能な色を有する、
     請求項3に記載の複合コード。
  6.  前記複数のセル内の所定領域は、前記それぞれのセルの色を認識するための基準点を含む、
     請求項1~5のいずれかに記載の複合コード。
  7.  前記マークの配置位置は、少なくとも前記特定セルおよび該特定セル以外のセルの少なくとも一方の前記基準点を基に設定される、
     請求項6に記載の複合コード。
  8.  前記マークの配置位置は、少なくとも前記特定セルの前記基準点から所定方向に所定間隔を設けて設定される、
     請求項6に記載の複合コード。
  9.  前記基準点として識別可能な前記所定領域から算出された中心座標値を基に、他の前記複数のセルの基準点の座標値が算出される、
     請求項6に記載の複合コード。
  10.  識別可能な前記マークの配置位置と前記基準点および第2のコードの向きを含み形成される基準パターンが前記複数のセルのいずれかに配置される、
     請求項6~9のいずれかに記載の複合コード。
  11.  前記基準パターンを基に、前記複数のセルの基準点からの前記マークとの幾何学的関係と前記第2のコードの向きを基に、前記データが定義される、
     請求項10に記載の複合コード。
  12.  前記第2のコードの向きは、前記基準パターンを形成するマークの形状、配置および、2以上の大きさの異なるマークのいずれかにより定義される、
     請求項10または11に記載の複合コード。
  13.  前記第2のコードの向きは、前記第1のコードの向きと同一である、
     請求項6~12のいずれかに記載の複合コード。
  14.  前記基準点は、前記それぞれのセルの中心である、
     請求項6~9のいずれかに記載の複合コード。
  15.  前記基準点は、前記それぞれのセルの所定領域の中心である、
     請求項6~14のいずれかに記載の複合コード。
  16.  前記複合コードが撮影されて記憶装置にXY座標軸を有する2次元撮像画像(X,Y)において、n個のピクセルとして2値化された前記所定領域の中心(XC,)は、n個(i=1~n)のピクセルの座標値をD(X,Y)とすると、X=(ΣX,i=1~n)/n,Y=(ΣY,i=1~n)/nである、
     請求項15に記載の複合コード。
  17.  前記所定領域の面積は、前記それぞれのセルの面積の1/10以上である、
     請求項1~16のいずれかに記載の複合コード。
  18.  前記所定領域の面積は、前記それぞれのセルの面積の1/20以上である、
     請求項1~16のいずれかに記載の複合コード。
  19.  前記所定領域の面積は、前記それぞれのセルの面積の60%程度以上である、
     請求項1~16のいずれかに記載の複合コード。
  20.  前記複数のセル内の所定領域の色は、前記それぞれのセルの色として認識できるだけの所定の面積を有する、
     請求項1~19のいずれかに記載の複合コード。
  21.  前記それぞれのセルの色は、前記識別可能な2以上の色のいずれかの色の濃度を所定量含むことによって、互いに識別可能である、
     請求項1~20のいずれかに記載の複合コード。
  22.  前記マークの色は、該マークが配置される前記所定領域と同一色を含む、
     請求項1~21のいずれかに記載の複合コード。
  23.  前記マークの配置位置は、少なくとも前記特定セルの前記所定領域を除く領域を任意の形状で区画した領域のいずれかに設定される、
     請求項1~22のいずれかに記載の複合コード。
  24.  前記マークの形状は、前記区画した領域と同一形状であり、該区画した領域内は同一色を有する、
     請求項23に記載の複合コード。
  25.  前記マークは、該マークが配置される前記所定の位置または該所定の位置を含む領域に、前記所定領域が有する色と互いに識別可能な2以上の色のいずれかを有する、
     請求項1~24のいずれかに記載の複合コード。
  26.  前記第2のコードは、前記マークの形状、大きさ、色、向き、配置パターンの少なくともいずれか1つにより、データが定義される、
     請求項1~25のいずれかに記載の複合コード。
  27.  前記マークの形状は、任意の形状である、
     請求項26に記載の複合コード。
  28.  前記マークの色は、該マーク同士識別可能な少なくとも赤、緑、青、シアン、マゼンダ、黄、黒、白および前記所定領域の色のいずれかを含む、
     請求項1~27のいずれかに記載の複合コード。
  29.  前記マークの大きさは所定の距離から視認しづらい大きさのマークである、
     請求項1~28のいずれかに記載の複合コード。
  30.  前記複合コードは、媒体に形成されるか、電子媒体、放送媒体、記憶媒体または通信媒体からの出力により表示装置に表示されるか、または電子媒体内にデジタル情報で形成される、
     請求項1~29のいずれかに記載の複合コード。
  31.  少なくとも前記第2のコードが複数のコードで形成され、
     前記複数のコードは、時系列データとして表示装置に時間軸方向に所定の順に表示されるか、または前記媒体の所定の位置に形成される、
     請求項30に記載の複合コード。
  32.  前記時間軸方向に所定の順に表示される複数のコードの間には、非表示の所定時間を含む、
     請求項31に記載の複合コード。
  33.  複数のセルが配列形状に配置され、該複数のセルのそれぞれのセルが所定領域を有し、該所定領域に互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードと、
     前記複数のセルの少なくとも一部を形成する特定セル内において、前記所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードと、
    を備えた複合コードであって、
     前記第1のコードおよび前記第2のコードの少なくとも一方に設けられる特定領域には、前記第1のコードおよび前記第2のコードのうちの少なくとも一方のコードのうちの該特定領域を除いた領域の少なくとも一部に対応する特定情報を含む複合コード。
  34.  請求項1~32のいずれかに記載の前記マークの少なくとも一つが形成されている、
     請求項33に記載の複合コード。
  35.  前記特定領域を除いた領域の少なくとも一部には、個人を特定する情報を含む、
     請求項33または34に記載の複合コード。
  36.  前記特定情報は、前記特定領域を除いた少なくとも一部を符号化手段により符号化した符号化情報である、
     請求項33~35のいずれかに記載の複合コード。
  37.  前記特定情報は、前記符号化情報が、暗号化手段により暗号化された暗号化情報である、
     請求項36に記載の複合コード。
  38.  前記暗号化情報は、復号化手段により、前記符号化情報に復号できる、
     請求項37に記載の複合コード。
  39.  前記特定領域を除いた少なくとも一部には、情報処理装置に前記復号化手段として実行させるためのプログラムが含まれる、
     請求項38に記載の複合コード。
  40.  前記暗号化情報は、前記暗号化手段で秘密鍵を用いて符号化情報を暗号化した情報であり、
     前記復号化手段は、公開鍵を用いて前記暗号化情報を復号化する、
     請求項38または請求項39のいずれかに記載の複合コード。
  41.  前記符号化手段はハッシュ関数であり、
     前記ハッシュ関数により符号化した符号化情報はハッシュ値であり、
     前記暗号化手段により暗号化された暗号化情報は暗号化されたハッシュ値であり、
     前記暗号化されたハッシュ値は、前記復号化手段により前記ハッシュ値に復号できる、
     請求項38~40のいずれかに記載の複合コード。
  42.  前記特定情報は、前記少なくとも一方のコードのうちの前記特定領域を除いた少なくとも一部が表す情報または前記符号化情報を基に電子署名手段によって作成された電子署名情報であり、前記電子署名情報は、検証手段により前記少なくとも一方のコードのうちの前記特定領域を除いた少なくとも一部が表す情報と所定の関係にあることが検証可能である、
     請求項36~41のいずれかに記載の複合コード。
  43.  前記複合コードを明示するためのマーク、グラフィックスまたはテキストの少なくともいずれかが、前記第1のコードの内部に形成された、
     請求項1~42のいずれかに記載の複合コード。
  44.  請求項33~42のいずれかに記載の複合コードが形成または表示された媒体。
  45.  請求項33~42のいずれかに記載の特定領域を除いた少なくとも一部は、前記媒体上に形成された文字および画像の少なくとも一つに対応する情報をデータ化したものであり、該情報の近傍または内部に前記複合コードが形成された、
     請求項44に記載の媒体。
  46.  請求項1~43のいずれかに記載の複合コードに含まれる、
     前記第1のコードを取得する第1の取得手段と、
     前記第2のコードを取得する第2の取得手段と、
    を備える、複合コード読取り装置。
  47.  請求項6~18のいずれかに記載の前記所定領域に含まれる基準点を基に、
     前記第2のコードが取得される、
     請求項46に記載の複合コード読取り装置。
  48.  前記第1の取得手段で取得した前記セルの基準点を、
     前記第2の取得手段で取得した前記基準点の座標値に基づいて補正して、
     前記第2のコードを読み取る、
     請求項47に記載の複合コード読取り装置。
  49.  請求項10~12のいずれかに記載の前記基準パターンを用いて、
     前記マークの配置候補位置を補正して、
     前記第2のコードを読み取る、
     請求項47または48に記載の複合コード読取り装置。
  50.  前記第1のコードおよび前記第2のコードの少なくとも一方には、個人を特定する情報を含み、
     前記個人を特定する情報は、少なくとも氏名、性別、生年月日、住所、戸籍、生体情報のいずれかに関する情報である、
     請求項46~49のいずれかに記載の複合コード読取り装置。
  51.  生体情報を取得する第3の取得手段と、
     前記第3の取得手段で取得した生体情報と、
     前記個人を特定する情報と照合して、その正否を出力する出力手段と、
    を備える請求項50に記載の複合コード読取り装置。
  52.  前記第1の取得手段、前記第2の取得手段、前記第3の取得手段および前記出力手段の少なくとも一つは、1または複数のプロセッサーの処理によって機能する、
     請求項51記載の複合コード読取り装置。
  53.  請求項36に記載の符号化手段と同一の符号化が可能な第2の符号化手段を備え、
     請求項33~42のいずれかに記載の特定領域を除いた少なくとも一部を、前記第2の符号化手段により第2の符号化情報に符号化する、
     請求項46~52のいずれかに記載の複合コード読取り装置。
  54.  復号化手段を備え、
     請求項37に記載の暗号化手段により暗号化された暗号化情報を、前記復号化手段により、請求項36に記載の符号化情報に復号する、
     請求項46~53のいずれかに記載の複合コード読取り装置。
  55.  公開鍵を有し、
     前記暗号化情報は、前記暗号化手段で秘密鍵を用いて符号化情報を暗号化した情報であり、
     前記復号化手段は、前記公開鍵を用いて前記暗号化情報を復号化する、
     請求項54に記載の複合コード読取り装置。
  56.  請求項53に記載の第2の符号化手段で符号化した第2の符号化情報と、
     前記復号化手段で復号した符号化情報と、を照合して請求項33に記載の特定情報の正否を判定する、
     請求項54~55のいずれかに記載の複合コード読取り装置。
  57.  コンピュータが、複数のセルが配列形状に配置され、該複数のセルのそれぞれのセルが所定領域を有し、該所定領域に互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードを生成する第1の生成ステップと、
     前記複数のセルの少なくとも一部を形成する特定セル内において、前記所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードを生成する第2の生成ステップと、を実行し、
     請求項1~43のいずれかに記載の複合コードを生成する、複合コード生成方法。
  58.  コンピュータが、複数のセルが配列形状に配置され、該複数のセルのそれぞれのセルが所定領域を有し、該所定領域に互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードを取得し、
     前記複数のセルの少なくとも一部を形成する特定セル内において、前記所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードを取得する複合コードの読み取り方法であって、
     請求項1~43のいずれかに記載の複合コードを読取る複合コード読取り方法。
  59.  コンピュータに、複数のセルが配列形状に配置され、該複数のセルのそれぞれのセルが所定領域を有し、該所定領域に互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードを生成する第1の生成ステップと、
     前記複数のセルの少なくとも一部を形成する特定セル内において、前記所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードを生成する第2の生成ステップと、を実行させる複合コード生成プログラムであって、
     請求項1~43のいずれかに記載の複合コードを生成する複合コード生成プログラム。
  60.  コンピュータが、複数のセルが配列形状に配置され、該複数のセルのそれぞれのセルが所定領域を有し、該所定領域に互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードを取得し、
     前記複数のセルの少なくとも一部を形成する特定セル内において、前記所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードを取得する複合コードの読み取りプログラムであって、
     請求項1~43のいずれかに記載の複合コードを読取る複合コード読取りプログラム。
  61.  複数のセルが配列形状に配置され、該複数のセルのそれぞれのセルが所定領域を有し、該所定領域に互いに識別可能な2以上の色のいずれかを有することによりデータが定義される第1のコードを生成する第1の生成手段と、
     前記複数のセルの少なくとも一部を形成する特定セル内において、前記所定領域を除く領域の所定の位置に配置される識別可能なマークによりデータが定義される第2のコードを生成する第2の生成手段と、
    を備えた複合コード生成装置であって、
     請求項1~43のいずれかに記載の複合コードを生成する複合コード生成装置。
PCT/JP2019/000028 2017-12-29 2019-01-04 複合コードパターン、生成装置、読み取り装置、方法およびプログラム WO2019132047A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020207022146A KR20200106510A (ko) 2017-12-29 2019-01-04 복합 코드 패턴, 생성 장치, 판독 장치, 방법 및 프로그램
EP19733929.4A EP3734510A4 (en) 2017-12-29 2019-01-04 COMPOSITE CODE PATTERN, GENERATOR, READER, METHOD AND PROGRAM
CN201980015364.8A CN112352245A (zh) 2017-12-29 2019-01-04 复合代码图案、生成设备、读取设备、方法以及程序
BR112020013344-2A BR112020013344A2 (pt) 2017-12-29 2019-01-04 código composto, mídia, e, dispositivos, programas e métodos de leitura do código composto e de criação de código composto
US16/958,743 US11755867B2 (en) 2017-12-29 2019-01-04 Composite code pattern, generating device, reading device, method, and program

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
JP2017255256 2017-12-29
JP2017-255256 2017-12-29
JP2018-082672 2018-04-23
JP2018082672 2018-04-23
US201862681354P 2018-06-06 2018-06-06
JP2018-109090 2018-06-06
JP2018109090A JP6403085B1 (ja) 2017-12-29 2018-06-06 複合コードパターン、生成装置、読み取り装置、方法およびプログラム
US62/681354 2018-06-06
JP2018-206168 2018-10-31
JP2018206168A JP6473899B1 (ja) 2017-12-29 2018-10-31 複合コードパターン、生成装置、読み取り装置、方法およびプログラム

Publications (1)

Publication Number Publication Date
WO2019132047A1 true WO2019132047A1 (ja) 2019-07-04

Family

ID=65516908

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/000028 WO2019132047A1 (ja) 2017-12-29 2019-01-04 複合コードパターン、生成装置、読み取り装置、方法およびプログラム

Country Status (7)

Country Link
US (1) US11755867B2 (ja)
EP (1) EP3734510A4 (ja)
JP (5) JP6473899B1 (ja)
KR (1) KR20200106510A (ja)
CN (1) CN112352245A (ja)
BR (1) BR112020013344A2 (ja)
WO (1) WO2019132047A1 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7242370B2 (ja) * 2019-03-26 2023-03-20 東邦ガスネットワーク株式会社 埋設物管理システム
JP6624323B1 (ja) * 2019-03-28 2019-12-25 株式会社セガゲームス 生体情報登録システム
JP6743245B1 (ja) * 2019-06-12 2020-08-19 株式会社バンダイ 識別コード付き玩具
JPWO2021039953A1 (ja) * 2019-08-28 2021-03-04
JP6931935B2 (ja) * 2019-10-11 2021-09-08 株式会社テララコード研究所 二次元シンボル、及び二次元シンボルの読取方法
US20210232805A1 (en) * 2020-01-24 2021-07-29 Jostens, Inc. System for managing exploration and consumption of digital content in connection with a physical article
KR102443688B1 (ko) * 2020-07-06 2022-09-14 이종찬 매장의 고객 관리 시스템 및 방법
KR20220023752A (ko) * 2020-08-20 2022-03-02 네오톤 아이엔씨 바코드 및 피어 리뷰의 사용에 의해 공급망을 트래킹 및 트레이싱하는 방법 및 시스템
US11734532B2 (en) * 2020-10-28 2023-08-22 University Of Rochester Two-dimensional bar codes that are both intensity-modulated and orientation-modulated for transmitting sensitive information along with non-sensitive information
CN112651475B (zh) * 2021-01-06 2022-09-23 北京字节跳动网络技术有限公司 二维码显示方法、装置、设备及介质
US11758476B2 (en) * 2021-02-05 2023-09-12 Dell Products L.P. Network and context aware AP and band switching
KR102485940B1 (ko) * 2021-05-31 2023-01-10 주식회사 이노파트너즈 이미지가 삽입된 큐알코드 및 이의 제작방법
KR102471729B1 (ko) * 2021-05-31 2022-11-28 주식회사 이노파트너즈 로고이미지가 삽입된 큐알코드 및 이의 제작방법
CN113379351B (zh) * 2021-06-22 2022-10-21 沙师弟(重庆)网络科技有限公司 一种基于区块链的运输订单信息存储方法
CN113988244B (zh) * 2021-10-19 2024-05-10 艾斯芸防伪科技(福建)有限公司 一种防伪点阵生成与校验方法、系统、设备及介质
WO2023166636A1 (ja) * 2022-03-02 2023-09-07 日本電信電話株式会社 音声再生装置、音声再生方法および音声再生プログラム
KR102562146B1 (ko) * 2022-12-29 2023-08-01 보이스아이 주식회사 컬러코드를 이용하여 입장권한과 신분을 증명하는 방법
CN116700637B (zh) * 2023-05-17 2024-04-19 国能龙源催化剂江苏有限公司 催化剂产品二维码打印方法、装置和电子设备
JP7493859B1 (ja) 2023-12-13 2024-06-03 株式会社フォリオ 二次元コード配布システム及び二次元コード配布方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2938338B2 (ja) 1994-03-14 1999-08-23 株式会社デンソー 二次元コード
JP2000030016A (ja) * 1999-04-30 2000-01-28 Olympus Optical Co Ltd 情報記録媒体及び情報再生システム
US6398117B1 (en) * 2000-01-14 2002-06-04 Hewlett-Packard Co. Method and system for combining bar codes of different encoding dimensions
JP2005222157A (ja) * 2004-02-03 2005-08-18 Gijutsu Transfer Service:Kk 2次元コード,2次元コードの形成装置及び形成方法並びに2次元コードの読取装置及び読取方法
JP2009163731A (ja) * 2007-12-21 2009-07-23 Canon Inc バーコードの除去方法
JP6061075B2 (ja) 2012-10-23 2017-01-18 株式会社テララコード研究所 二次元コード、二次元コードの生成方法、及び二次元コードの読取方法

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0546743A (ja) * 1991-08-09 1993-02-26 Matsushita Electric Ind Co Ltd 個人識別装置
JP2833975B2 (ja) * 1992-09-28 1998-12-09 オリンパス光学工業株式会社 ドットコード
DE69329120T2 (de) 1992-09-28 2001-03-22 Olympus Optical Co Aufzeichnungsmedium für punktcode und informations-aufzeichnungssystem
US5726435A (en) 1994-03-14 1998-03-10 Nippondenso Co., Ltd. Optically readable two-dimensional code and method and apparatus using the same
US5682467A (en) 1994-09-29 1997-10-28 Xerox Corporation Arbitrating apparatus for controlling selective access of multiple bus masters to a printing system video bus
JP3015687B2 (ja) * 1994-11-01 2000-03-06 東芝テック株式会社 Idカード読取装置
JPH10302034A (ja) 1997-04-24 1998-11-13 N T T Data:Kk 認証システム、カード発行装置、認証装置、認証用カード及び認証方法
JPH11272816A (ja) 1998-03-25 1999-10-08 Toshiba Tec Corp Idカ−ド及び個人認証システム
US6267296B1 (en) 1998-05-12 2001-07-31 Denso Corporation Two-dimensional code and method of optically reading the same
JP2000076411A (ja) 1998-09-01 2000-03-14 Toppan Printing Co Ltd Idカード及びidカード発行装置並びにidカード読取装置
JP2001052142A (ja) 1999-08-06 2001-02-23 Toshiba Corp Idカード、idカード発行装置ならびにidカード認証装置
JP2001256501A (ja) 2000-03-10 2001-09-21 Matsushita Electric Ind Co Ltd 個人認証システム
JP2002140742A (ja) 2000-11-06 2002-05-17 Yoshiomi Yamada チェックシステム及びidカ−ド
JP2002281275A (ja) 2001-03-16 2002-09-27 Fuji Xerox Co Ltd 証明写真および個人認証媒体
JP4011362B2 (ja) 2002-02-15 2007-11-21 浩 近藤 パスポートの偽造防止情報作成システム、パスポート及び偽造パスポート検出システム
JP2004310313A (ja) 2003-04-04 2004-11-04 Veritec Iconix Ventures Inc 二次元コード化した個人生体情報を含む本人認証用カードおよび二次元コード化した個人生体情報を使用した個人認証方法。
US20050016026A1 (en) 2003-07-21 2005-01-27 Long David William Interchangeable shoe pieces
JP4495935B2 (ja) 2003-09-22 2010-07-07 川澄化学工業株式会社 指紋照合装置及び指紋照合情報共有システム
JP2005204250A (ja) 2004-01-19 2005-07-28 Ricoh Co Ltd 証明書確認方法、証明書確認プログラム及び証明書
US7898642B2 (en) 2004-04-14 2011-03-01 Asml Netherlands B.V. Lithographic apparatus and device manufacturing method
JP2007272320A (ja) 2006-03-30 2007-10-18 Mitsubishi Electric Corp 入場管理システム
KR100924697B1 (ko) 2007-07-11 2009-11-03 삼성전자주식회사 수직자기기록헤드 및 그 제조방법
JP5018382B2 (ja) * 2007-10-03 2012-09-05 株式会社デンソーウェーブ 二次元コードおよびその読取装置
JP4998202B2 (ja) 2007-10-23 2012-08-15 日本電気株式会社 携帯通信端末
JP2010067127A (ja) * 2008-09-12 2010-03-25 Canon Inc 情報処理装置、情報処理装置の制御方法、記憶媒体、及びプログラム
JP5343761B2 (ja) 2009-08-25 2013-11-13 株式会社デンソーウェーブ 光学的情報読取装置、及び光学的情報読取装置を用いた認証システム
CN102576415B (zh) * 2009-09-30 2015-11-25 株式会社希福特 二维码、二维码阅读器和程序
US20120138679A1 (en) * 2010-12-01 2012-06-07 Yodo Inc. Secure two dimensional bar codes for authentication
JP5433607B2 (ja) 2011-03-02 2014-03-05 株式会社大都技研 遊技台
CN104246794A (zh) 2012-04-26 2014-12-24 惠普发展公司,有限责任合伙企业 具有多个不同区域的二维条形码
US8997241B2 (en) * 2012-10-18 2015-03-31 Dell Products L.P. Secure information handling system matrix bar code
JP2015052839A (ja) 2013-09-05 2015-03-19 大日本印刷株式会社 電子透かしコードを付与した情報記録体
RU2681696C2 (ru) 2013-11-07 2019-03-12 Скантраст Са Двухмерный штрихкод и способ аутентификации штрихкода
JP6375957B2 (ja) 2015-01-16 2018-08-22 株式会社デンソー 充電管理システムおよび読取端末
JP6231233B1 (ja) * 2017-02-23 2017-11-15 株式会社マイクロ・テクニカ コードの画像データを生成する方法、およびコードの真贋判定方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2938338B2 (ja) 1994-03-14 1999-08-23 株式会社デンソー 二次元コード
JP2000030016A (ja) * 1999-04-30 2000-01-28 Olympus Optical Co Ltd 情報記録媒体及び情報再生システム
US6398117B1 (en) * 2000-01-14 2002-06-04 Hewlett-Packard Co. Method and system for combining bar codes of different encoding dimensions
JP2005222157A (ja) * 2004-02-03 2005-08-18 Gijutsu Transfer Service:Kk 2次元コード,2次元コードの形成装置及び形成方法並びに2次元コードの読取装置及び読取方法
JP2009163731A (ja) * 2007-12-21 2009-07-23 Canon Inc バーコードの除去方法
JP6061075B2 (ja) 2012-10-23 2017-01-18 株式会社テララコード研究所 二次元コード、二次元コードの生成方法、及び二次元コードの読取方法

Also Published As

Publication number Publication date
US20210103786A1 (en) 2021-04-08
BR112020013344A2 (pt) 2020-12-01
CN112352245A (zh) 2021-02-09
JP6746158B2 (ja) 2020-08-26
KR20200106510A (ko) 2020-09-14
JP2020161172A (ja) 2020-10-01
JP2019192212A (ja) 2019-10-31
JP2023060315A (ja) 2023-04-27
EP3734510A1 (en) 2020-11-04
JP2020123377A (ja) 2020-08-13
JP6713610B2 (ja) 2020-06-24
EP3734510A4 (en) 2022-04-20
JP6473899B1 (ja) 2019-02-27
JP2019192196A (ja) 2019-10-31
US11755867B2 (en) 2023-09-12

Similar Documents

Publication Publication Date Title
JP6473899B1 (ja) 複合コードパターン、生成装置、読み取り装置、方法およびプログラム
JP6403085B1 (ja) 複合コードパターン、生成装置、読み取り装置、方法およびプログラム
US9406010B2 (en) Producing, capturing and using visual identification tags for moving objects
US9922332B2 (en) Digital signatory and time stamping notary service for documents and objects
KR101710050B1 (ko) 이미지 식별 시스템 및 방법
EP2937819B1 (en) System which uses information code
CN101099161B (zh) 用于装备照相机的移动装置的视觉代码系统及其应用
US20160042262A1 (en) Information code, information code producing method, information code reader, and system which uses information code
JP2018501588A (ja) 四次元コード及び、四次元コードに基づく画像識別システム及び画像識別方法、四次元コード検索システム及び四次元コード検索方法
CN100349168C (zh) 一种防伪票据、票据防伪方法及系统
CN102034127A (zh) 新型大容量二维条码与系统及其编解码方法和应用
US20030115470A1 (en) Method and apparatus for embedding encrypted images of signatures and other data on checks
CN101501702A (zh) 用于生成和链接合成图像的方法和系统
CN1950853A (zh) 移动票务
WO2019170927A1 (es) Método y sistema de verificacion automática de la autenticidad de documentos
WO2019098272A1 (ja) 認証装置、サーバコンピュータ、認証方法、カメラ付きモバイル、及びコードラベル
CN101354717B (zh) 原稿提取方法和原稿提取装置
JP5924035B2 (ja) 情報処理装置及び情報処理プログラム
Kato 2D-barcode for Mobile Devices
CN114359921A (zh) 图像识别方法、装置、电子设备及计算机可读存储介质
JP2013097393A (ja) 手書き文字テキスト化システム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19733929

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20207022146

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2019733929

Country of ref document: EP

Effective date: 20200729

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112020013344

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 112020013344

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20200629

NENP Non-entry into the national phase

Ref country code: JP