KR20200106510A - 복합 코드 패턴, 생성 장치, 판독 장치, 방법 및 프로그램 - Google Patents

복합 코드 패턴, 생성 장치, 판독 장치, 방법 및 프로그램 Download PDF

Info

Publication number
KR20200106510A
KR20200106510A KR1020207022146A KR20207022146A KR20200106510A KR 20200106510 A KR20200106510 A KR 20200106510A KR 1020207022146 A KR1020207022146 A KR 1020207022146A KR 20207022146 A KR20207022146 A KR 20207022146A KR 20200106510 A KR20200106510 A KR 20200106510A
Authority
KR
South Korea
Prior art keywords
code
information
cell
dot
cells
Prior art date
Application number
KR1020207022146A
Other languages
English (en)
Inventor
켄지 요시다
마사카츠 모리이
Original Assignee
가부시키가이샤 아이피 솔루션즈
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 가부시키가이샤 아이피 솔루션즈 filed Critical 가부시키가이샤 아이피 솔루션즈
Publication of KR20200106510A publication Critical patent/KR20200106510A/ko

Links

Images

Classifications

    • 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
    • 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
    • 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

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 이상의 색 중 어느 쪽을 가짐으로써 데이터가 정의되는 제 1 코드와, 복수의 셀의 적어도 일부에 상기 소정 영역을 제외한 영역을 가지는 특정 셀을 형성하고, 소정 영역을 제외한 영역의 소정 위치에 배치되는 식별 가능한 마크에 의해 데이터가 정의되는 제 2 코드를 구비한 복합 코드로 하였다.

Description

복합 코드 패턴, 생성 장치, 판독 장치, 방법 및 프로그램
본 발명은 복합 코드 패턴, 생성 장치, 판독 장치, 방법 및 프로그램에 관한 것이다.
종래부터, 바코드 등의 1 차원 코드, QR 코드(등록 상표) 등의 2 차원 코드 등, 화상에 의한 여러 가지 정보 표현이 제안되고 있다. 이러한 정보 표현은, 예를 들면, 밝은 색으로 식별되는 셀이나 공간과 어두운 색으로 식별되는 셀이나 바를 매트릭스 형상으로 배치하여 이루어지는, 1 차원 혹은 2 차원의 화상이 이용된다.
또한, 예를 들면, QR 코드(등록상표)의 셀 중, 적어도 일부의 셀이, 보다 미세한 서브 셀에 의해서 매트릭스 형상으로 세분화된 확장 셀을 이용하는 것도 제안되어 있다.
일본등록특허 제6061075호 공보 일본등록특허 제2938338호 공보
그런데, 이러한 정보 표현에서는, 명도 등의 색 요소에 의해서 식별 가능한 2 종류 이상의 셀이 배치되고 코드 정보가 표현된다. 현재의 정보 표현으로는 정보량이 적은 경우가 많다. 원래 이들 정보 표현에서는 화상이 형성되는 매체면에서의 단위면적당 정보량(이하, '정보 밀도')을 향상시키기 위해, 셀 치수가 작게 설정되어 있다. 셀 치수가 작게 설정된 정보 표현에 있어서 고해상도의 코드 판독 장치가 필요하게 된다. 또한, 셀이 세분화되면, 세분화된 셀의 판별이 곤란하게 될 가능성이 커진다.
따라서, 종래 기술에서는 밝은 색으로 식별되는 스페이스나 셀과 어두운 색으로 식별되는 바나 셀을 배열 형상으로 배치하여 이루어지는, 1차원 혹은 2차원 코드의 화상에서, 셀이나 스페이스/바의 치수가 작게 설정된 정보표현에서, 더욱 더 정보량을 증가시킬 때, 정보표현으로부터의 판독 곤란성에 대한 고려가 이루어지지 않고 있다. 따라서 본 발명의 하나의 측면은 1차원 혹은 2차원 화상에서 코드 정보표현으로부터의 판독 곤란성을 줄이면서, 한층 더 정보량을 증가시키는 것을 목적으로 한다.
하나의 측면에서, 본 발명은, 복합 코드 패턴으로서 예시할 수 있다. 본 복합 코드 패턴은, 식별 가능한 2 이상의 색 중 어느 하나를 각각 적어도 일부의 영역에 가지는 복수의 셀이 배열 형상으로 배치된 제 1 코드와, 상기 배치된 셀 중 하나 이상의 특정 셀 내에서, 마크가 배치된 제 2 코드를 구비한 복합 코드 패턴이다.
본 복합 코드 패턴에서는, 1차원 혹은 2차원 코드의 화상에서, 정보 표현으로부터의 판독 곤란성을 저감하면서, 한층 더 정보량을 증가하는 것이 가능해진다.
[도 1] QR 코드의 구조를 예시하는 그림이다.
[도 2] 정보 셀의 일부를 한층 더 세분화한 서브 셀을 포함한 QR 코드의 구조를 예시하는 그림이다.
[도 3] 제 2 코드를 서브 셀보다 작은 도트로 표현하는 패턴을 예시하는 그림이다.
[도 4] 제 2 코드의 예를 나타내는 그림이다.
[도 5] 제 2 코드의 예를 나타내는 그림이다.
[도 6] 제 2 코드의 예를 나타내는 그림이다.
[도 7] 제 1 코드 내에서의 제 2 코드의 배치 위치에 대해 설명하는 그림이다.
[도 8] 제 1 코드 내에서의 제 2 코드의 배치 위치에 대해 설명하는 그림이다.
[도 9] 제 1 코드 내에서의 제 2 코드의 배치 위치에 대해 설명하는 그림이다.
[도 10] 제 1 코드내의 어두운 색 셀에 제 2 코드를 배치하는 그림이다.
[도 11] 제 1 코드 내에서의 제 2 코드의 배치 위치에 대해 설명하는 그림이다.
[도 12] 제 1 코드 내에서의 제 2 코드의 배치 위치에 대해 설명하는 그림이다.
[도 13] 제 1 코드 내에서의 제 2 코드의 배치 위치에 대해 설명하는 그림이다.
[도 14] 제 2 코드를 형성하는 셀 내의 패턴 배치에 대해 설명하는 그림이다.
[도 15] 제 2 코드를 형성하는 셀 내의 패턴 배치에 대해 설명하는 그림이다.
[도 16] 제 2 코드를 형성하는 셀 내의 패턴 배치에 대해 설명하는 그림이다.
[도 17] 제 2 코드를 형성하는 셀 내의 패턴 배치에 대해 설명하는 그림이다.
[도 18] 제 2 코드를 형성하는 셀 내의 패턴 배치에 대해 설명하는 그림이다.
[도 19] 제 2 코드를 형성하는 셀 내의 패턴 배치에 대해 설명하는 그림이다.
[도 20] 선분의 선단이 가상점이 되는 선분에 의한 제 2 코드의 예이다.
[도 21] 선분의 중심이 가상점이 되는 선분에 의한 제 2 코드의 예이다.
[도 22] 선분의 길이가 복수 단계로 변경된 제 2 코드의 예이다.
[도 23] 선분을 소정의 비율로 내분하는 위치가 가상점이 되는 선분에 의한 제 2 코드의 예이다.
[도 24] QR 코드의 셀 내에 도트 패턴을 배치한 복합 코드의 구성 예(1)를 나타내는 그림이다.
[도 25] QR 코드의 셀 내에 도트 패턴을 배치한 복합 코드의 구성 예(2)를 나타내는 그림이다.
[도 26] QR 코드의 셀 내에 도트 패턴을 배치한 복합 코드의 구성 예(3)를 나타내는 그림이다.
[도 27] QR 코드의 셀 내에 도트 패턴을 배치한 복합 코드의 구성 예(4)를 나타내는 그림이다.
[도 28] QR 코드의 셀 내에 도트 패턴을 배치한 복합 코드의 구성 예(5)를 나타내는 그림이다.
[도 29] QR 코드의 셀 내에 도트 패턴을 배치한 복합 코드의 구성 예(6)를 나타내는 그림이다.
[도 30] QR 코드의 셀 내에 도트 패턴을 배치한 복합 코드의 구성 예(7)를 나타내는 그림이다.
[도 31] QR 코드의 셀 내에 도트 패턴을 배치한 복합 코드의 구성 예(8)를 나타내는 그림이다.
[도 32] 실시형태 1과 관련한 복합 코드에 의한 서비스를 제공하는 정보시스템의 구성을 예시하는 그림이다.
[도 33] 정보처리 장치의 하드웨어 구성을 예시하는 그림이다.
[도 34] 컨텐츠 서버에 의한 복합 코드 생성 처리 A를 예시하는 플로우 차트이다.
[도 35] 사용자 장치에 의한 복합 코드 판독 처리 A를 예시하는 플로우 차트이다.
[도 36] 셀 내의 제 2 코드의 해석 처리의 상세를 예시하는 플로우 차트이다.
[도 37] 실시형태 2와 관련한 정보 시스템의 구성을 예시하는 그림이다.
[도 38] 복합 코드 생성 처리 B를 예시하는 플로우 차트이다.
[도 39] 복합 코드 판독 처리 B를 예시하는 플로우 차트이다.
[도 40] 실시형태 3에 있어서의 복합 코드의 판독 처리를 예시하는 플로우 차트이다.
[도 41] 인쇄된 어두운 색 셀과 픽셀의 관계를 예시하는 그림이다.
[도 42] 어두운 색 셀에 밝은 색의 도트를 형성한 예이다.
[도 43] 밝은 색 셀에 어두운 색의 도트를 형성한 예이다.
[도 44] 바운딩 박스에 의한 도트의 위치 판정 방법을 예시하는 그림이다.
[도 45] 5×5픽셀로 인쇄한 셀에 도트 코드를 형성한 예이다.
[도 46] 7×7픽셀로 인쇄한 셀에 도트 코드를 형성한 예이다.
[도 47] 처리 예 1의 진위 판정을 위한 복합 코드 생성 처리를 예시하는 그림이다.
[도 48] 처리 예1의 복합 QR 코드 판독·인증 처리를 예시하는 플로우 차트이다.
[도 49] 처리 예 2의 진위 판정을 위한 복합 코드 생성 처리를 예시하는 그림이다.
[도 50] 처리 예2의 복합 QR 코드 판독·인증 처리를 예시하는 플로우 차트이다.
[도 51] 처리 예 3의 진위 판정을 위한 복합 코드 생성 처리를 예시하는 그림이다.
[도 52] 처리 예3의 복합 QR 코드 판독·인증 처리를 예시하는 플로우 차트이다.
[도 53] 처리 예 4의 진위 판정을 위한 복합 코드 생성 처리를 예시하는 그림이다.
[도 54] 처리 예4의 복합 QR 코드 판독·인증 처리를 예시하는 플로우 차트이다.
[도 55] 처리 예 5의 진위 판정을 위한 복합 코드 생성 처리를 예시하는 그림이다.
[도 56] 처리 예5의 복합 QR 코드 판독·인증 처리를 예시하는 플로우 차트이다.
[도 57] 처리 예 6의 진위 판정을 위한 복합 코드 생성 처리를 예시하는 그림이다.
[도 58] 처리 예6의 복합 QR 코드 판독·인증 처리를 예시하는 플로우 차트이다.
[도 59] 처리 예 7의 진위 판정을 위한 복합 코드 생성 처리를 예시하는 그림이다.
[도 60] 처리 예7의 복합 QR 코드 판독·인증 처리를 예시하는 플로우 차트이다.
[도 61] 셀 내의 정보 도트의 배치 후보 위치를 8개소 배치한 실시예이다.
[도 62 ]1개의 셀 내 도트의 배치 위치 8개소를 예시하는 그림이다.
[도 63] QR 코드의 사양에 따라 구한 셀의 중앙 좌표 위치가 셀의 본래 중앙에서 어긋나는 화상의 예이다.
[도 64] 제 2 코드의 방향과 바운딩 박스를 나타낸 그림이다.
[도 65] 도트 코드가 형성된 밝은 색 셀의 예이다.
[도 66] 셀을 촬영한 화상의 예이다.
[도 67] 셀을 촬영한 화상의 예이다.
[도 68] 셀을 촬영한 화상을 2치화한 예이다.
[도 69] 셀을 촬영한 화상을 2치화한 예이다.
[도 70] 화상을 2치화하는 처리 예이다.
[도 71] 정보 도트의 중심 좌표치가 바운딩 박스 내에 포함되어 있는 것을 예시하는 그림이다.
[도 72] 정보 도트의 중심 좌표치가 바운딩 박스 내에 포함되어 있는 것을 예시하는 그림이다.
[도 73] 어두운 색 셀에만 기준 도트를 배치하여 도트 코드를 형성한 복합 코드의 예이다.
[도 74] 제 1 코드에 의해서 셀의 중앙으로서 구해진 좌표 위치가 셀의 본래의 중앙에서 벗어나 있는 화상의 예이다.
[도 75] 복합 코드의 일부를 나타낸 실시예이다.
[도 76] 셀 내의 정보 도트의 배치 후보 위치를 설정하고, 중앙에 기준 도트를 배치한 실시예이다.
[도 77] 제 1 코드에 의해서 셀의 중앙으로서 구해진 좌표 위치가 셀의 본래의 중앙에서 벗어나 있는 화상의 예이다.
[도 78] 제 2 코드의 방향과 바운딩 박스를 나타낸 그림이다.
[도 79] 복합 코드의 일부를 나타낸 실시예이다.
[도 80] 제 1 코드에 의해서 셀의 중앙으로서 구해진 좌표 위치가 셀의 본래의 중앙에서 벗어나 있는 화상의 예이다.
[도 81] 복합 코드의 일부를 나타낸 실시예이다.
[도 82] 밝은 색 셀을 종횡 4분할하여 정보 분할 셀의 배치 후보 위치와 기준 도트를 배치한 실시예이다.
[도 83] 제 1 코드에 의해 셀의 중앙으로 구해진 좌표위치가 셀의 본래 중앙에서 벗어나 있는 화상의 예이다.
[도 84] 제 2 코드의 방향과 바운딩 박스를 나타낸 그림이다.
[도 85] 복합 코드의 일부를 나타낸 실시예이다.
[도 86] 밝은 색 셀을 종횡 5분할하여 정보 분할 셀의 배치 후보 위치와 기준분할 셀을 배치한 실시예이다.
[도 87] 제 1 코드에 의해 셀의 중앙으로서 구해진 좌표 위치가 셀의 본래의 중앙에서 벗어나 있는 화상의 예이다.
[도 88] 제 2 코드의 방향과 바운딩 박스를 나타낸 그림이다.
[도 89] 복합 코드의 일부를 나타낸 실시예이다.
[도 90] 밝은 색 셀을 종횡 5분할해 정보 분할 셀의 배치 후보를 배치한 실시예이다.
[도 91] 제 1 코드에 의해서 셀의 중앙으로서 구해진 좌표 위치가 셀의 본래의 중앙에서 벗어나 있는 화상의 예이다.
[도 92] 제 2 코드의 방향과 바운딩 박스를 나타낸 그림이다.
[도 93] 정보 분할 셀의 배치 후보 위치를 상하 좌우에 인접하지 않도록 12개소 배치한 실시예이다.
[도 94] 바운딩 박스에 대해 나타내는 그림이다.
[도 95] 바운딩 박스를 이동시킨 상태를 나타내는 그림(1)이다.
[도 96] 바운딩 박스를 이동시킨 상태를 나타내는 그림(2)이다.
[도 97] 바운딩 박스를 이동시킨 상태를 나타내는 그림(3)이다.
[도 98] 바운딩 박스를 이동시킨 상태를 나타내는 그림(4)이다.
[도 99] 바운딩 박스를 이동시킨 상태를 나타내는 그림(5)이다.
[도 100] 바운딩 박스를 이동시킨 상태를 나타내는 그림(6)이다.
[도 101] 바운딩 박스를 이동시킨 상태를 나타내는 그림(7)이다.
[도 102] 바운딩 박스를 이동시킨 상태를 나타내는 그림 (8)이다.
[도 103] 기준 패턴을 가진 복합 코드의 실시예이다.
[도 104] 기준 패턴을 2개의 셀로 나누어 배치한 복합 코드의 실시예이다.
[도 105] 기준 패턴을 가진 복합 코드의 실시예이다.
[도 106] 밝은 색 및/또는 어두운 색의 셀의 소정 간격마다 기준 패턴을 복수 배치한 복합 코드의 실시예이다.
[도 107] 기준 도트와 기준 분할 셀에 의한 기준 패턴을 배치한 복합 코드의 실시예이다.
[도 108] 2개의 셀에 기준 분할 셀을 배치해 기준 패턴으로 한 복합 코드의 실시예이다.
[도 109] 디렉션 도트를 더해 제 2 코드의 방향을 설정한 복합 코드의 실시예이다.
[도 110] 기준 패턴을 구성하는 기준 도트의 배치를 바꾸고, 제 2 코드의 방향을 설정한 복합 코드의 실시예이다.
[도 111] 소정 영역의 명암으로 셀의 명암을 나타내고, 정보 도트를 어두운 색으로 나타낸 복합 코드의 일부를 나타낸 예이다.
[도 112] 소정 영역의 명암으로 셀의 명암을 나타내고, 정보 도트를 어두운 색으로 나타낸 복합 코드의 일부를 나타낸 예이다.
[도 113] (a)는 어두운 색 셀 내의 정보 도트의 배치 후보 위치에 번호를 설정한 예이며, (b)는 밝은 색 셀 내의 정보 도트의 배치 후보 위치에 번호를 설정한 예이며, (c)는 그림113(a)의 배치 구체적인 예 및 대응하는 수치 데이터의 예이며, (d)는 그림113(b)의 배치 구체적인 예 및 대응하는 수치 데이터의 예이다.
[도 114] 어두운 색의 소정 영역의 기준점을 가상선으로 묶어 형성한 격자를 예시하는 그림이다.
[도 115] 정보 도트 이외의 영역을 셀의 명어두운 색으로 한 복합 코드의 일부를 나타낸 예이다.
[도 116] 소정 영역의 명암으로 셀의 명암을 나타내고, 소정 영역을 제외한 영역을 반대색으로 한 복합 코드의 일부를 나타낸 예이다.
[도 117] 밝은 색 및 어두운 색의 소정 영역의 기준점을 가상선으로 연결하여 형성한 격자를 예시하는 그림이다.
[도 118] 밝은 색 및 어두운 색의 기준 셀을 배치하여 정보 도트를 어두운 색으로 나타낸 복합 코드의 일부를 나타낸 예이다.
[도 119 ]버전 6의 QR 코드에 기준 셀을 배치한 예의 그림이다.
[도 120] QR 코드의 판독 순서를 예시하는 플로우 차트이다.
[도 121] (a)는 형성된 QR 코드의 이미지이고, (b)는 실제로 촬상되는 QR 코드의 이미지이고, (c)는 촬상된 QR 코드를 2치화한 이미지이고, (d)는 휀더 패턴 및 얼라인먼트 패턴의 중심 좌표를 나타내는 그림이고, (e)는 모든 셀의 중심 좌표를 나타내는 그림이다.
[도 122] 기준 셀을 기초로 한 격자에 의한 기준점의 보정 방법을 예시한 그림이다.
[도 123] 밝은 색 및 어두운 색 기준 셀의 기준점을 가상선으로 묶어 형성한 격자의 일부를 예시하는 그림이다.
[도 124] 밝은 색 및 어두운 색 기준 셀의 기준점을 묶은 선을 바탕으로 형성한 격자를 예시하는 그림이다.
[도 125] 변형 소정 영역을 가지는 밝은 색 기준 셀을 배치해, 정보 도트를 어두운 색으로 나타낸 복합 코드의 일부를 나타낸 예이다.
[도 126] 밝은 색 및 어두운 색 기준 셀의 기준점을 가상선으로 묶어 형성한 격자의 일부를 예시하는 그림이다.
[도 127] 기준 패턴을 정의하는 밝은 색 및 어두운 색 기준 셀을 배치하여 정보 도트를 어두운 색으로 나타낸 복합 코드의 일부를 나타낸 예이다.
[도 128] 기준 패턴을 정의하는 밝은 색 및 어두운 색 기준 셀의 기준점을 가상선으로 묶어 형성한 격자의 일부를 예시하는 그림이다.
[도 129] 기준 패턴을 정의하는 밝은 색 및 어두운 색 기준 셀을 배치하여 정보 도트를 어두운 색으로 나타낸 복합 코드의 일부를 나타낸 예이다.
[도 130] 기준 패턴을 정의하는 밝은 색 및 어두운 색 기준 셀의 기준점을 가상선으로 묶어 형성한 격자의 일부를 예시하는 그림이다.
[도 131] 소정 영역의 명암으로 셀의 명암을 나타낸 복합 코드의 일부를 나타낸 예이다.
[도 132] 소정 영역의 명암에서 셀의 명암을 나타낸 복합 코드의 일부를 나타낸 예이다.
[도133] (a)는 셀을 6×6픽셀로 나타낸 그림이고, (b)는 셀을 2×2픽셀의 구획으로 나타낸 그림이고, (c)는 도 131(b)의 소정 영역을 어두운 색으로 나타낸 그림이고, (d)는 도 131(b)의 소정 영역을 밝은 색으로 나타낸 그림이고, (e)는 도 131(c)의 배치 구체예 및 대응하는 수치 데이터를 나타낸 그림이며, (f)는 도 131(d) 의 배치 구체예 및 대응하는 수치 데이터를 나타낸 그림이다.
[도 134] 밝은 색 및 어두운 색의 소정 영역의 기준점을 가상선으로 묶어 형성한 격자를 예시하는 그림이다.
[도 135] 어두운 색 기준 셀을 배치한 복합 코드의 일부를 나타낸 예이다.
[도 136] 어두운 색 기준 셀의 기준점을 가상선으로 연결해 형성한 격자의 일부를 예시하는 그림이다.
[도 137] 밝은 색 및 어두운 색 기준 셀을 배치한 복합 코드의 일부를 나타낸 예이다.
[도138] 밝은 색 및 어두운 색 기준 셀의 기준점을 가상선으로 묶어 형성한 격자의 일부를 예시하는 그림이다.
[도 139] 기준 패턴을 정의하는 밝은 색 및 어두운 색 기준 셀을 배치한 복합 코드의 일부를 나타낸 예이다.
[도 140] 기준 패턴을 정의하는 밝은 색 및 어두운 색 기준 셀의 기준점을 가상선으로 묶어 형성한 격자의 일부를 예시하는 그림이다.
[도 141] 변형 소정 영역을 가지는 어두운 색 기준 셀을 배치한 복합 코드의 일부를 나타낸 예이다.
[도 142] 기준 패턴을 정의하는 어두운 색 기준 셀의 기준점을 가상선으로 묶어 형성한 격자의 일부를 예시하는 그림이다.
[도 143] 기준 패턴을 정의하는 밝은 색 및 어두운 색 기준 셀을 배치한 복합 코드의 일부를 나타낸 예이다.
[도 144] 기준 패턴을 정의하는 밝은 색 및 어두운 색 기준 셀의 기준점을 가상선으로 묶어 형성한 격자의 일부를 예시하는 그림이다.
[도 145] (a)는 셀을 6×6픽셀로 나타낸 그림이고, (b)는 셀을 1×2픽셀의 구획으로 나타낸 그림이고, (c)는 도 143(b)의 소정 영역을 어두운 색으로 나타낸 그림이고, (d)는 도 143(b)의 소정 영역을 어두운 색으로 나타낸 그림이며, (e)는 도 143(c)의 배치 구체예 및 대응하는 수치 데이터를 나타낸 그림이며, (f)는 도143(d)의 배치 구체예 및 대응하는 수치 데이터를 나타낸 그림이다.
[도 146] 셀을 8×8픽셀로 나타낸 그림이다. (a)는 소정 영역이 4×4픽셀로 마크 사이에 공극이 있는 예를 나타내는 그림이고, (b)는 (a)의 소정 영역을 어두운 색으로 나타낸 그림이고, (c)는 (a)의 소정 영역을 밝은 색으로 나타낸 그림이고, (d)는 소정 영역이 2×2픽셀로 마크 사이에 공극이 있는 예를 나타내는 그림이고, (e)는 (d)의 소정 영역을 어두운 색으로 나타낸 그림이고, (f)는 (d)의 소정 영역을 밝은 색으로 나타낸 그림이고, (g)는 변형의 소정 영역을 나타낸 그림이고, (h)는 (g)의 소정 영역을 어두운 색으로 나타낸 그림이고, (i)는 (g)의 소정 영역을 밝은 색으로 나타낸 그림이고, (j)는 소정 영역이 2×2픽셀로 마크 배치 영역을 밝은 색 영역이 둘러싸고 있는 그림이고, (k)는 (j)의 소정 영역을 어두운 색으로 나타낸 그림이고, (l)은 (j)의 소정 영역을 밝은 색으로 나타낸 그림이고, (m)은 소정 영역이 2×2 픽셀로 마크 배치 영역을 소정 영역과 동일 색의 영역으로 둘러싸고 있는 그림이고, (n)은 (m)의 소정 영역을 어두운 색으로 나타낸 그림이고, (o)는 (m)의 소정 영역을 밝은 색으로 나타낸 그림이고, (p)는 소정 영역이 4×4픽셀로 마크의 배치 후보 위치가 12개소인 예를 나타낸 그림이고, (q)는 (p)의 소정 영역을 어두운 색으로 나타낸 그림이고, (r)은 (p)의 소정 영역을 밝은 색으로 나타낸 그림이고, (s)는 소정 영역이 2×2픽셀로 마크의 배치 후보 위치가 12개소인 예를 나타낸 그림이고, (t)는 (s)의 소정 영역을 어두운 색으로 나타낸 그림이고, (u)는 (s)의 소정 영역을 밝은 색으로 나타낸 그림이다.
[도 147] 복합 코드의 생성 처리를 예시하는 플로우 차트이다.
[도 148] 복합 코드의 판독 처리를 예시하는 플로우 차트이다.
[도 149] 복합 코드의 판독 처리를 예시하는 플로우 차트이다.
[도 150] 복합 코드의 판독 처리를 예시하는 플로우 차트이다.
[도 151] 복합 코드의 판독 처리를 예시하는 플로우 차트이다.
[도 152] 시계열 복합 코드의 특정 프레임 중의 기준 좌표의 보정 방법을 예시한 그림이다.
[도 153] 시계열 복합 코드의 표시를 나타내는 시간축(프레임 번호)을 가로축으로 한 그래프이다.
이하, 도면을 참조하여 일 실시형태와 관련된 정보처리장치에 대해 설명한다. 이하의 실시형태의 구성은 예시로, 본 정보처리장치는 실시형태의 구성에는 한정되지 않는다.
[비교예]
도 1에, QR 코드의 구조를 예시한다. QR 코드는, 위치 검출 패턴(파인더 패턴), 얼라인먼트 패턴, 타이밍 패턴, 포맷 정보, 데이터 및 오류정정부호를 포함한다. 파인더 패턴은, 데이터의 추출·경사 등을 검출할 경우에 이용된다. 얼라인먼트 패턴은 왜곡에 의해서 생기는 각 셀의 위치 벗어남을 보정할 때에 이용된다. 타이밍 패턴은 흰 셀과 검정 셀이 번갈아 배치되며 심볼 내의 모듈 좌표를 결정하는데 사용된다. 포맷 정보는 사용되고 있는 오류 정정율과 마스크 패턴에 관한 정보를 저장한다. 상출한 패턴 혹은 정보가 배치되는 영역 이외의 영역에서, 도 1에 사선으로 나타낸 영역에, 데이터와 오류정정부호가 배치된다.
도 2는, 정보 셀의 일부를 한층 더 세분화한 서브 셀을 포함한 QR 코드의 구조를 예시한다. 그림과 같이, 세분화된 서브 셀은 셀을 가로 방향 및 세로 방향으로 각각 4분할하고, 1개의 셀을 16분할한 구조를 가진다. 그리고 셀이 16분할된 서브 셀의 영역 중, 예를 들어 네 모서리 셀 및 중앙의 4개 셀을 제외한 나머지 8개 서브 셀(도 2에서, 회색으로 예시)에 어두운 색을 부여함으로써, 원래 명암 1비트의 정보를 8개소, 합계 8비트의 정보로 증가시킨다.
그렇지만, 도 2의 구성에서는 서브 셀 SC1과 SC2와 같이, 인접한 2개의 서브 셀이 하나가 되어 하나의 동일 색 영역이 되는 것이 발생할 수 있다. 또한, 서브 셀 SC1과 SC3와 같이, 모서리 중 1점에서, 2개의 어두운 색의 영역이 접촉하는 것이 생길 수 있다. 또한, 서브 셀 SC1부터 SC8의 모든 것이, 인접하는 셀에 접촉하고 있다. 따라서, 서브 셀 SC1에서 SC8의 어느 쪽인가(예를 들면, 서브 셀 SCk)에, 인접하는 셀과 동일 색이 지정되었을 경우에는, 서브 셀 SCk와 인접하는 셀이 일체가 되어 동일 색이 연속하는 영역이 되는 것이 생길 수 있다.
이와 같이, 복수의 어두운 색의 영역이 접속하면, 판독 분해능의 한계로는, 단독의 서브 셀과 복수의 서브 셀의 모임의 식별이 곤란해지는 경우가 있다. 한편, 서브 셀 SC1에 대해서, 서브 셀 SC4로부터 SC8을 조합시킨 경우와 같이, 적어도 1개의 밝은 색의 영역을 사이에 두고 배치된 어두운 색의 서브 셀의 조합에 의한 정보 표현에서는, 각각 단독의 어두운 색의 서브 셀이 밝은 색의 영역으로 구분되어, 어두운 색의 영역의 윤곽을 식별하기 쉬워진다. 따라서 적어도 하나의 밝은 색 영역을 사이에 두고 배치된 복수의 어두운 색 서브 셀의 조합은 판독 분해능의 한계에서도 판독 곤란성이 적다고도 할 수 있다. 그렇지만, 이와 같이 한정을 추가하는 것으로, 표현 가능한 비트수가 저감한다.
예를 들면, 만일 16개의 서브 셀에 어두운 색의 영역과 밝은 색의 영역을 배치하는 경우, 서브 셀 이외의 본래의 어두운 색의 셀(QR 코드의 흑 셀 등)과 구별하기 위해, 상기 특허 문헌 1에서는, 어두운 색의 서브 셀은, 1개의 셀내에 25% 밖에 배치할 수 없다고 되어 있다. 따라서 16개의 서브 셀 가운데 최대 4개의 서브 셀을 어두운 색의 셀로 할 수 있으며, 정의 가능한 서브 셀의 배치 조합은 16C4 + 16C3 + 16C2 + 16C1 = 1,820 + 560 + 120 + 16 = 2,516가지가 된다. 더욱이, 분할된 서브 셀이 없는 경우를 고려하면, 배경이 흰색인 경우(즉, 1개도 흑색의 분할 셀이 없는 경우)의 1가지가 추가된다.
이 추가에 의해, 서브 셀의 배치 조합은 이론상 2,517가지가 된다. 따라서, 도 2의 서브 셀에 의한 정보량은, 11비트 < 16C4 + 16C3 + 16C2 + 16C1 + 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에 가까워지는 것은 말할 필요도 없다. 또한, 한층 더 높은 해상도, 예를 들면, 1200 dpi의 해상도의 프린터로 인쇄하는 경우에는, 한층 더 정밀한 인쇄가 가능해진다.
도 3의 예에서는, 셀 면적은 0.250×0.250 = 0.0625평방mm가 되고, 최대 8개의 도트에 의한 면적은 0.0249×0.0249×3.14×8 = 0.0156평방mm가 된다. 이 경우, 통상의 고정밀도 인쇄기로 도트를 인쇄했을 경우, 양호하지 않은 케이스라도, 셀 면적에 차지하는 도트의 면적의 비율은, 24.96%가 되어, 상기 특허 문헌 1의 25%에 대략 가까운 값이 된다. 따라서, 도 3의 도트 패턴에서는, 16C8 + 16C7 + 16C6 + 16C5 + 16C4 + 16C3 + 16C2 + 16C1 + 16C0 = 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의 도트가 표현 가능한 정보량은, 9C8 + 9C7 + 9C6 + 9C5 + 9C4 + 9C3 + 9C2 + 9C1 + 9C0 = 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의 도트가 표현 가능한 정보량은, 8C8 + 8C7 + 8C6 + 8C5 + 8C4 + 8C3 + 8C2 + 8C1 + 8C0 = 256 가지가 되어, 8 비트가 된다. 도 5의 도트 패턴은, 마크끼리가 접촉하는 배치가 제외되고 있는 패턴의 일례라고 할 수 있다. 또한, 도 5의 도트 패턴에서는, 마크가, 특정 셀과 그 특정 셀에 인접한 셀과의 경계에 접촉하는 배치가 제외되어 있다고 말할 수 있다. 따라서, 도 5의 도트 패턴의 제 1 코드 판독에 장애가 없는 마크라고 할 수 있다.
도 6에, 제 2 코드의 더욱 다른 예를 나타낸다. 도 6의 예에서는, 1개의 셀내에 가상점(X1, Y1)이 설정된다. 가상점(X1, Y1)은, 예를 들어, 셀의 좌하점을 원점(0,0)으로 했을 때의 좌표치로 지정된다. 다만, 가상점의 위치에 가상점을 나타내는 마크가 붙여지는 것은 아니다. 또한, 가상점의 위치에 기준점을 나타내는 마크를 배치해도 좋다. 그리고 가상점을 중심으로 반경 d의 가상적인 원주 상에 소정의 각도 θ, 예를 들어 45도 간격으로 도트를 배치함으로써 정보를 정의할 수 있다. 이 경우, 거리 d를 고정했다고 하면, 도트 수를 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 분할한 영역의 중심에, 가상점(Xi, Yj)이 설정된다. 이미, 도 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에서는, 선분의 길이가 복수 단계로 변경되고 있어, 선분의 길이가 정보를 정의하는 하나의 요소이다. 덧붙여 제 2 코드로서 선분을 배치할 경우에, 가상점의 위치는, 선분의 중심으로 한정되는 것은 아니다. 예를 들어, 도 23은 선분의 중심이 아니라 선분을 소정의 비율로 내분하는 위치(예를 들어 선분의 끝에서 1/3의 위치)가 가상점에 위치되는 선분에 의한 제 2 코드의 예이다. 따라서, 도 22, 혹은 도 23에서도 선분의 방향 및 길이의 적어도 어느 하나에 따라 수치 데이터의 일부를 정의할 수 있다. 또한, 도 20부터 도 23에서는, 선분 중 어느 하나의 위치를 가상점 상에 배치함으로써 수치 데이터의 일부가 정의된다고 말할 수 있다.
이상과 같이, 도 14로부터 도 23까지는, 특정 셀에서의 좌표 정보를 가진 위치에 1 이상의 가상점을 임의로 설정했다고 할 수 있다. 또한, 도 14부터 도 23에서는, 가상점을 기본으로 하여 마크를 배치하여 수치 데이터가 정의된다고 말할 수 있다. 덧붙여, 상기 도 14부터 도 23에서는, 밝은 색의 영역과 어두운 색의 영역에 의해서 마크를 정의했지만, 예를 들면, R(빨간색), G(초록), B(파랑) 중 2개에 의해서, 마크를 정의해도 된다. 따라서 도 14부터 도 23까지는 마크의 형상, 색, 가상점을 기초로 한 마크의 배치 방법 및 배치 유무 중 적어도 어느 하나에 의해 수치 데이터의 일부가 정의되는 복합 코드의 한 예라고 할 수 있다. 또한, 도 14로부터 도 23에서는, 제 2 코드는, 도트 또는 선분으로 정의되었다. 그러나, 마크의 형상은 임의의 다각형 또는 대략 원형이어도 좋다.
<QR 코드에 실제로 도트를 배치한 예>
도 24는, 제 1 코드의 예로서 QR 코드의 셀 내에 도트 패턴을 배치한 복합 코드의 구성 예(1)를 나타내는 그림이다. 구성 예(1)에서는, 제 2 코드의 예로서 가상점으로부터의 거리와 방향으로 정보를 정의하는 도트 패턴이 예시된다. 가상점으로부터의 거리와 방향에서 정보를 정의하는 도트 패턴은, 도 14에서 설명한 대로다. 도 24에서는, QR 코드 부분에 해칭 패턴으로 나타낸 어두운 색의 영역과 해칭 패턴이 없는 밝은 색의 영역이 형성되고 있다. 또한, 밝은 색의 영역 내의 대략 중심 부근에, 플러스("+")의 마크로, 가상점이 예시되고 있다. 덧붙여 플러스("+") 등의 마크는, 가상점의 위치를 도면 상에 예시하기 위해서 기재된 것으로, 실제의 복합 코드에는, 플러스("+") 등의 마크는 그려지지 않는다. 또한, 가상점 주위에, 대략 45도 단위로, 도트가 각 밝은 색의 영역에 하나씩 예시되고 있다.
도 25는 제 1 코드의 예로서 QR 코드의 셀 내에 도트 패턴을 배치한 복합 코드의 구성 예(2)를 나타내는 그림이다. 구성 예(2)에서는 제2 코드의 예로서 밝은 색의 영역 내에 가상점이 복수 설치되어 가상점 상에 있는지 여부에 따라 정보를 정의한다. 도 25에서는 하나의 밝은 색의 영역에 가상점이 4점 설치되어 있지만, 본 실시형태에서 가상점이 4점으로 한정되는 것은 아니다.
도 26은 제1 코드의 예로서 QR 코드의 셀 내에 도트 패턴을 배치한 복합 코드의 구성 예(3)를 나타내는 그림이다. 구성 예(3)에서는 제2 코드의 예로서 밝은 색의 영역 내에 가상점이 복수 설치되어 가상점 상에 있는지 여부에 따라 정보를 정의한다. 도 25에서는 각 밝은 색의 영역에 도트가 1개 배치되어 있는데, 도 26에서는 1개의 밝은 색의 영역에 도트가 0점에서 3점 설치되어 있다.
도 27은 제1 코드의 예로서 QR 코드의 셀 내에 도트 패턴을 배치한 복합 코드의 구성 예(4)를 나타내는 그림이다. 구성 예(4)에서는, 제 2 코드의 예로서 도트 패턴이 정의되는 특정 셀에 의해서 가상점의 수나 도트의 배치 방법이 다르다. 즉, 특정 셀의 위치에 따라 가상점의 수, 가상점의 배치 위치, 가상점에 대한 도트의 배치 방법이 다른 것으로 해도 좋다. 가상점에 대한 도트의 배치 방법에는, 예를 들면, 도 24와 같이, 가상점으로부터의 거리와 방향으로 정보를 정의하는 도트 패턴의 배치와 도 25, 도 26과 같이, 가상점 상에 있는지 아닌지에 따라 정보를 정의하는 도트 패턴의 배치가 예시된다. 또한, 하나의 밝은 색 영역 내 도트의 수는 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 코드가 배치되는 특정 셀에 의해서 다른 배치의 방법으로 선분이 배치된다. 예를 들면, 선분의 선단이 가상점이 되는 선분, 선분의 중심이 가상점이 되는 선분, 선분의 길이가 복수 단계로 변경되어 선분의 길이가 정보를 정의하는 하나의 요소가 되는 것, 선분을 소정의 비율로 내분하는 위치가 가상점이 되는 선분 등을 채용할 수 있다.
도 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)는 CPU(11)과 주 기억장치(12)와 외부기기를 가지며, 프로그램에 의해 정보처리를 실행한다. CPU(11)는 프로세서라고도 한다. 외부기기로서는, 외부 기억 장치(13), 표시 장치(14), 조작부(15), 통신 인터페이스(16), 화상 입력 인터페이스(17), 화상 출력 인터페이스(18)을 예시할 수 있다.
CPU(11)은 주 기억장치(12)에 실행 가능하도록 전개된 컴퓨터 프로그램을 실행하여 정보처리장치(10)의 기능을 제공한다. 주 기억장치(12)는 CPU(11)이 실행하는 컴퓨터 프로그램, CPU(11)가 처리하는 데이터 등을 기억한다. 주 기억장치(12)는 Dynamic Random Access Memory(DRAM), Static Random Access Memory(SRAM), Read Only Memory(ROM) 등이다. 또한 외부 기억장치(13)은 예를 들어, 주 기억장치(12)를 보조하는 기억 영역으로 사용되어 CPU(11)가 실행하는 컴퓨터 프로그램, CPU(11)가 처리하는 데이터 등을 기억한다. 외부 기억장치(13)은 하드디스크 드라이브, Solid State Disk(SSD) 등이다. 또한, 정보처리장치(10)에는 탈착 가능 기억매체의 구동장치를 설치해도 된다. 탈착 가능 기억매체는, 예를 들면, 블루 레이 디스크, Digital Versatile Disk(DVD), Compact Disc(CD), 플래시 메모리 카드 등이다.
표시장치(14)는, 예를 들면, 액정 디스플레이, 일렉트로르미네센스 패널 등이다. 조작부(15)는, 예를 들면, 키보드, 포인팅 디바이스 등이다. 본 실시형태에서는 포인팅 디바이스로서 마우스가 예시된다. 통신 인터페이스(16)는, 네트워크 N1 상의 다른 장치와 데이터를 주고 받는다. 예를 들어, CPU(11)는 통신 인터페이스(16)를 통해 네트워크 N1 상의 다른 장치와 통신한다. 또한, 통신 인터페이스(16)은, 방송 장치에 접속되어도 된다. 방송 장치는, 예를 들면, 디지털 데이터를 베이스밴드 신호로부터, 고주파 신호로 변환해, 고주파 앰프 및 안테나를 개입시켜, 변환된 고주파를 방송파로서 송신한다.
화상 입력 인터페이스(17)에는 카메라, 스캐너 등이 접속되어 각종 매체로부터 화상 데이터를 취득한다. 각종 매체로는 TV 수상기의 화면, 컴퓨터의 디스플레이, 서적 등의 인쇄물, 물체 표면에 형성된 시각적인 무늬 등을 예시할 수 있다.
화상출력 인터페이스(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가 제공하는 컨텐츠에 관련지어진 기억 장치로부터 입력된다.
다음으로, 도 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는, 도트 위치의 화소를 소정 화소수분 주사하여, 화소치의 비율 VPn/VP0를 산출한다(S232). 그리고, 비율 VPn/VP0가 기준치 이하인지 아닌지를 판정한다(S233). 여기서, 화소란, 스캔 혹은 카메라로 취득한 화상이 화상 메모리에 보존되었을 때의 화상 메모리의 배열 요소를 말한다. 여기서, VP0은 도트 중심으로 추정되는 위치의 화소값이다. VPn은 도트 중심에서 n화소 떨어진 위치의 화소값이다. VPn/VP0이 기준치 이하일 경우, 도트 중심으로 추정되는 위치의 화소값에 대하여 도트 중심에서 n 화소 떨어진 위치의 화소값의 비율이 충분히 작아진다. 그래서 사용자 장치 UD는 비율 VPn/VP0이 기준치 이하인 경우, 도트의 존재를 추정하는 기준치를 충족한다고 판단한다.
그리고 사용자 장치 UD는 비율이 도트의 존재를 추정하는 기준치를 충족할 경우, 도트 있음을 기록한다(S234). 한편, 비율이 도트의 존재를 추정하는 기준치를 충족하지 않는 경우, 즉 비율 VPn/VP0이 기준치 이하가 되지 않는 경우, 사용자 장치 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의 형식인 경우, 하나의 셀에서 256 가지, 8 비트의 정보를 정의할 수 있다.
또한, 상기 실시형태에서는, 사용자 장치 UD2의 복합 코드 해석 수단 CA2 혹은, 관리 서버 MS1의 복합 코드 해석 수단 CAM는, 화상 입력 수단 IIN1, IIN2로부터 취득한 화상 중의 도트의 존재가 추정되는 위치(예를 들면, 도트 중심으로 추정되는 위치)의 화소값 VP0 와 도트의 중심으로 추정되는 위치에서 소정 화소수(n 화소) 떨어진 위치의 화소값 VPn 과의 비율이 소정의 조건 충족 여부에 따라 도트의 존재 여부를 판정했다. 이러한 화소치의 비를 이용하는 것으로, 밝은 색의 영역과 어두운 색의 영역과의 경계를 정밀하게 판정할 수 있다. 상기 비율에 의한 판정에서는, 예를 들면, 제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)와 셀의 중심 좌표(Xi, Yj)를 대응해 관리할 수 있다. 복합 코드를 생성하는 관리 서버 MS1의 복합 코드 생성 수단 CGM, 혹은 컨텐츠 서버 CS2의 복합 코드 생성 수단 CG2는, 제 2 코드가 설정된 셀 판독순서의 번호 SEQ(k)와 셀의 중심 좌표(Xi, Yj)를 대응해 보존하고, 복합 코드를 판독하는 사용자 장치 UD1, UD2에 인도하면 된다.
또한, 예를 들면, 모든 셀의 기준이 되는 일련 번호 ID(n)를 소정의 기준으로 부여하고, 모든 셀에 대해 부여되는 식별 정보인 일련 번호 ID(n)와 제 2 코드가 설정된 셀 판독 순서의 번호 SEQ(k)와의 관계로서 관리할 수 있다. 복합 코드를 생성하는 관리 서버 MS1의 복합 코드 생성 수단 CGM, 혹은 컨텐츠 서버 CS2의 복합 코드 생성 수단 CG는, 셀 판독 순서의 번호 SEQ(k)와 각 셀에 대한 일련 번호 ID(n)를 대응해 보존하고, 복합 코드를 판독하는 사용자 장치 UD1, UD2에 인도하면 된다. 이 경우, 각 셀에 대한 일련번호 ID(n)와 각 셀의 중심 좌표(Xi, Yj)의 관계는, 사전에 규칙으로 정해져 있는 것으로 한다.
이하, 셀의 판독순서의 번호 SEQ(k)를 특정 셀 인덱스라고도 한다. 또한, 제 2 코드가 설정된 셀의 판독순서의 번호 SEQ(k)와 셀의 중심 좌표(Xi, Yj)와의 관계, 혹은, 모든 셀에 대해 부여되는 식별 정보인 일련 번호 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)와 셀의 중심 좌표(Xi, Yj)와의 관계, 혹은, 셀 판독순서의 번호 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에서는, 제 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)와 셀의 중심 좌표(Xi, Yj)와의 관계, 혹은, 셀 판독순서의 번호 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 코드인 도트 패턴을 프레임별로 취득하면 된다.
또한, 하나의 제 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종류로 함으로써 하나의 마크 배치 위치에서 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.17 mm)를 최소 픽셀수(4×4)로 인쇄하는 어두운 색 셀에 도트 코드를 형성하면, 도 42와 같이, 어두운 색 셀의 중앙의 4개의 픽셀 중 어느쪽이든 인쇄하는 것으로, 4가지의 도트 패턴을 형성할 수 있다. 즉, 1개의 셀에 대해 2bit의 도트 코드를 정의할 수 있다. 중앙의 4개만을 대상으로 한 것은, 도트와 같은 색의 셀과 인접할 경우, 셀의 윤곽의 정확도가 나쁘면 도트를 인식하기 어렵기 때문에 셀의 윤곽 영역에 접속하는 도트의 배치를 배제하는 것이 바람직하기 때문이다.
도트 코드 판독에는 여러 가지 방법이 있다. 도트 코드의 판독은 복합 코드가 촬상된 화상이 프레임 버퍼에 기억되고, 프레임 버퍼의 좌표계에서 도트를 인식해 그 중심 위치(좌표치)를 구하거나, 도트 배치 후보 위치에 도트가 배치되어 있는지를 인식하고, 도트의 배치 패턴에 의해 정의된 정보를 취득함으로써 행해진다. 대표적인 방법은 다음과 같다.
(방법 1)
방법 1은 도트의 중심점을 인식하는 방법이다. 즉, 방법 1은 촬상한 화상으로부터 도트를 추출해 도트의 중심 좌표치를 구해 도트의 배치 패턴을 구한다. 이 경우, 도트 주변에는, 촬상했을 때에 도트를 형성하는 화소의 명암으로부터, 명암의 변화율 등을 역치로서 도트를 검출하기 때문에, 도트는 다른 도트나, 동일한 색의 셀과 접촉한 상태에서는 인식하는 것이 곤란하다. 따라서, 근접하는 도트의 단부로부터 양 도트를 인식할 수 있는 소정 거리를 떼어놓고 도트를 배치하는 것이 바람직하다.
그런데, 촬상한 화상에서는, 빛이 측방으로부터 QR 코드를 비추거나 그림자나 음영이 생기거나 하고, 도트를 추출하려면, 상술한 명암의 변화율을 역치로 하는 것이 바람직하지만, 명암의 변화율을 요구하려면, 서로 이웃하는 도트의 단부로부터 끝부분까지 적어도 4 픽셀 이상이 필요하고, 일정한 해상도를 가지는 카메라로 촬영이 필요하게 된다. 한편, QR 코드의 동일색 셀의 명암은 셀의 위치에 따라 크게 다른 경우가 있지만, 각 셀 내에서의 변화는 거의 없다. 그래서 밝은 색 셀에서는 해당 셀을 촬영한 픽셀이 밝은 쪽으로부터 여러 개의 픽셀 명도의 평균값 BLA를 구하고, 동시에 픽셀이 어두운 쪽으로부터 여러 개의 픽셀 명도의 평균값 BDA를 구한다. ΔBL = BLA - BDA가 소정범위 내에 들어 있으면, 해당 셀에는 도트가 존재하지 않는다는 것을 알 수 있으며, 소정범위를 넘으면 도트가 존재하게 된다. 이 경우의 도트를 판정하는 역치는, α×BDA 이하, 또는 BDA + β×ΔBL 이하로 계산된다. 어두운 색 셀에서는, 동일한 처리를 실시하여, 도트를 판정하는 역치는, α×BLA 이상, 또는 BDA + β×ΔBL 이상으로 계산된다. 또한,α,β는, BLA, BDA, ΔBL 이나, 카메라의 성능이나 촬상 화상의 특성등에 의해서 정해진다.
(방법 2)
방법 2는, 화상으로 얻은 도트과 인식 대상의 도트가 형성되는 소정 영역(도트의 배치 후보 영역) 또는 소정 위치(도트의 배치 후보 위치)와의 중복 부분을 구하는 방법이다. 방법 2는, 간결하게는, 소정의 영역 또는 소정의 위치에 도트가 존재하는지를 판정하는 방법이라고 할 수 있다. 방법 2의 경우 도트의 중심 좌표치를 구할 필요가 없다. 도트의 존재 여부는 도트의 배치 후보 영역 또는 배치 후보 위치를 정확하게 인식할 수 있어야 한다. 인쇄 정밀도가 좋고 복합 QR 코드 판독 장치의 해상도가 높으면 복합 코드 판독 장치는 셀의 중심 좌표치과 해당 셀의 영역을 정확하게 인식할 수 있다. 그러한 경우는, 바운딩 박스라고 불리는 미리 도트의 후보 배치 위치(XnS1, YnS1)를 중심으로 한 소정의 영역에 도트의 중심 위치가 포함되는지 어떤지, 또는 해당 영역에 일정한 면적을 가지는 도트의 소정의 범위가 포함되는지 아닌지로, 도트의 배치 위치가 판정된다. 혹은 도트의 후보 배치 위치(XnS1, YnS1)에 일정한 면적을 갖는 도트의 일부가 중첩되어 있는지 여부에 따라 인식해도 된다. 또한, 복합 QR 코드가 형성된 매체가 평면을 형성하지 않는 경우나, 동 매체에 대해서, 판독 장치가 대각선 방향으로부터 촬영한 경우는, 셀의 중심 좌표치가 어긋나는 경우가 있다. 그러한 경우는 구한 셀의 중심 좌표치를 소정의 방법으로 올바른 셀의 중심 좌표치으로 보정하는 것이 바람직하다. 이 방법 2는 미세한 서브셀에 의해 매트릭스 형태로 세분화된 확장 셀이 제 2 코드를 형성하는 복합 코드에서도 기존보다 정밀한 인식을 가능하게 한다. 그 때의 최대의 조건은, 각 셀의 배치 위치가, 복합 코드가 촬영된 화상이 프레임 버퍼에 기억되어 그 좌표계에 대해 정확한 좌표치로 인식할 수 있는 것이다. 정확한 좌표치를 취득하기 위해서는 기준이 되는 기준 마크를 마련하고 그 기준 마크는 서브셀과 접속시키지 않고 독립적으로 설치하여 해당 기준 마크를 추출하여 중심 좌표치를 취득하는 것이다. 그 결과, 기준 마크와 서브셀의 배치 위치의 관계를 통해 서브셀의 배치 위치를 인식할 수 있다.
도 44는 바운딩 박스에 의한 도트의 위치 판정 방법을 예시하는 그림이다. 도 44와 같이, 판독 장치는, 셀 중심 위치로부터, 셀의 코너를 향해 직선을 그어, 해당 직선과 중복되는 도트의 픽셀을 추출한다. 또한, 셀의 중심 위치(좌표치)는, 대개, 제 1 코드를 읽는 것에 의해서 취득할 수 있지만, 프레임 버퍼의 좌표계와는 다른 좌표계의 좌표치로 취득했을 경우는, 촬상 화상이 기억된 프레임 버퍼의 좌표계의 좌표치로 변환할 필요가 있다. 그리고 판독 장치는 도트과 중복된 직선상의 영역(직선과 중복된 픽셀의 열로 이루어지는 영역)의 중심이 미리 도트의 후보 배치 위치(XnS1, YnS1)를 중심으로 한 소정의 영역 이내(바운딩 박스)에 해당 좌표치가 포함되어 있는지 판정하면 된다. 바운딩 박스는 도트의 사이즈와 동일한 셀 사이즈의 25% 전후(예를 들면 20% ~ 30% 정도)의 직경을 가진 원이 바람직하지만, 직사각형이나 기타 형상이어도 좋고, 그 사이즈도 오인율을 상정한 오류 정정 수준이나 인쇄 정밀도, 촬상 해상도로 적당히 정해도 좋다. 또한, 도트가 결여되어 있는 경우에는 중복 영역이 도중에 없는 경우나 잉크가 날아가는 경우도 있으므로 이를 판정하는 것이 바람직하다. 예를 들어, 직선과 중복된 픽셀의 열로 이루어진 영역이 복수 영역으로 분리되는 경우가 상정된다. 그러한 경우에는 판독 장치는 최대영역을 도트의 영역으로 간주하면 된다. 또한, 분리한 복수 영역 간의 거리가 소정치 이내인 경우에 판독 장치는 분리된 복수 영역을 하나의 연속 영역으로서 통합해도 된다.
도트 좌표치는 직선과 도트의 중복 위치 시점(XnS1-1, YnS1-1) 및 종점의 좌표치(XnS1-2, YnS1-2)으로부터, 식 XnS1=(XnS1-2+XnS1-1)/2, YnS1=(YnS1-2+YnS1-1)/2에 의해서, (XnS1, YnS1)로서 구할 수 있다. 그 결과, 도 44의 예에서 셀 내의 2개의 대각선을 이용해 도트를 검출할 경우, 1개의 대각선에 4개의 도트의 배치 위치를 설정해 인식할 수 있으므로, 1개의 셀에 대해서, 2개의 대각선으로 합계 8개의 도트의 배치를 설정하고, 8 가지, 즉 3 bit를 정의할 수 있다.
이 8 가지 방법은, 8개의 도트의 배치 후보 위치 중 어느 1개만 도트가 배치되었을 경우이며, 덧붙여 도트인지 아닌지의 판정용 역치는, 전술한 명암의 변화율등이나, α×BDA 또는 α×BLA나 BDA + β×ΔBL 을 사용해도 된다. 셀의 배치위치가 일정의 징밀도로 인식할 수 있으면 바운딩 박스를 해당 셀의 크기보다 약간 밑도는 크기로 설정하고, 해당 바운딩 상자 내에서 도트를 추출하면 도트가 접속하여 인접하는 같은 색의 셀의 영향을 받지 않는다.
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개의 셀에서 3 bit가 정의된다. 이 도트 코드의 인식 방법으로는 판독 장치는 셀의 중심 위치를 기반으로 도트가 배치되는 영역에 대해 바운딩 박스를 설정하고 해당 바운딩 박스 내에 도트가 배치되어 있는지 여부에 따라 도트의 배치를 인식하면 된다. 바운딩 박스의 크기는 도 45에서는 도트의 사이즈와 같은 정도의 셀 사이즈의 20% 내외(15 ~ 30% 정도), 도 46에서는 셀 사이즈의 14% 내외(10% ~ 20% 정도)의 직경 또는 변을 가진 원 또는 직사각형인 것이 바람직하다. 도트의 구체적인 인식방법으로는 판독 장치는 바운딩 박스 내에서 인식된 어두운 색 또는 밝은 색의 비율이 소정의 비율(예를 들어 셀의 중심위치의 어긋남이나 인쇄의 정밀도를 고려하여 50%)을 넘었을 경우에 도트가 배치되어 있는 것을 판정해도 된다. 또한, 판독 장치는 도트의 중심 좌표치를 구하고 셀 내에 본래 배치되는 도트의 좌표치에 가장 가까운 위치의 바운딩 박스 내의 도트로 판정해도 된다. 또한, 도트인지 아닌지의 판정용 역치는, 전술한 명암 변화율 등이나, α×BDA 또는 α×BLA나 BDA + β×ΔBL 을 사용해도 된다.
또한, 어두운 색 셀에 대해서도 밝은 색 도트에 의해 동일한 도트 코드를 정의할 수 있는 것은 말할 필요도 없다. 본 실시형태에서는 도 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 코드에 기록된 정보는, 전화 회선이나 인터넷, 무선 등의 통신을 사용하지 않고, 카메라로 촬영해, 전용의 앱으로 판독하는 것만으로 취득할 수 있다. 이것에 의해, 정보 송신중에 제3자에게 해킹 당하는 것을 회피시킬 수 있어 지극히 시큐러티성이 높은 기록 매체가 된다. 따라서 복합 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.779 KB, 도트 코드에는 최대 1.558 KB를 격납 가능)까지의 판독이 가능하고, 도트 코드에 QR 코드의 1.5 ~ 2배 정도를 격납할 수 있어 인쇄한 경우 105×8×25.4/600 mm≒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.504 KB, 도트 코드에는 최대 2.016 KB를 격납 가능)까지 판독이 가능하며, 도트 코드에 QR 코드의 3 ~ 4배 정도를 격납할 수 있어 인쇄했을 경우 85×10×25.4/600mmmm≒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.331 KB, 도트 코드에는 최대 0.662 KB를 격납 가능)이며 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.331 KB, 도트 코드에는 최대 4.662 KB를 격납 가능) 즉 QR 코드의 규격의 모든 것에 대응해 표시할 수 있어 QR 코드의 1.5 ~ 2배 정도를 격납할 수 있다. 일본어 텍스트 압축 데이터 기술에 의해 8,610 문자를 격납할 수 있다. 또한, 도 44와 같은 판독 방식을 실시하면, 도트 코드에는 최대 6.993 KB를 격납 가능하며 QR 코드의 2 ~ 3배 정도를 격납할 수 있다. 게다가 일본어 텍스트 압축 데이터 기술에 의해 12,915 문자를 격납할 수 있다. 도 45의 복호 QR 코드에서는, 1개의 셀을 5×5 픽셀로 표시하면, 800/5=160이 되어 버전 35, 157×157 셀(오류 정정 레벨 M으로 한자 1,113 문자, 1.809 KB, 도트 코드에는 최대 5.427 KB를 격납 가능)이며 QR 코드의 3 ~ 4배 정도를 격납할 수 있다. 게다가 일본어 텍스트 압축 데이터 기술에 의해 1,836 문자를 격납할 수 있다. 도 46의 도트 코드에서는, 1 개의 셀을 7×7 픽셀로 표시하면, 800/7 ≒114가 되어 버전 24, 113 ×113 셀(잘못 수정 레벨 M으로 한자 561 문자, 0.991 KB, 도트 코드에는 최대 7.928 KB를 격납 가능)이며 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 코드에 채용되어 있는 오류 정정 부호는 블록 부호의 일종인 리드솔로몬 부호지만, 도트 코드에 채용하는 오류 정정 부호는 접이식 부호를 이용해도 된다.
접이식 부호는 블록 부호와는 달리 데이터 구분이 없고, 한 곳의 데이터를 그 주변에 뿌리고, 그 정보를 사용하여 통계적인 방법으로 복호화하므로 오류 정정 성능이 높고, 구속 길이가 작으면 고속으로 처리할 수 있다.
단, 오류 정정 부호는 도트 코드의 정보 용량이나 오류율에 따라 각종 오류 정정 부호와 오류를 추정하기 위해 2차 정보(휘도 정보, 시계열 및 주변의 오류 정보 등)를 이용한 각종 복호법(연판정 복호법 포함)을 적용할 수 있다. 물론 도트 코드에 적합한 다른 오류 정정 부호를 사용해도 되는 것은 물론이다.
지금까지 대용량 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 코드나 발행 요청자를 공개하여 제3자가 평가하여 신뢰성을 높여도 된다. 제3자는 일반 사용자라도 좋다.
(4) 시큐리티를 보장하기 위해 발행기관 이외의 제3자가 복합 QR 코드를 발행할 수 없도록 부호화 정보를 암호화 수단으로 암호화할 필요가 있다. 부호화 정보를 암호화하기 위해서는 디지털 서명 알고리즘, 즉 서명 생성을 비밀키로 생성해도 된다. 당해 디지털 서명 알고리즘에는 SHA256을 비롯한 각종 기법이 있으며, 미국 상무부 산하의 National Institute of Standards and Technology(NIST)에서 표준화되어 있다. 또한, 부호화 정보를 암호화 수단으로 암호화한 암호화 정보는, 디지털 서명인 것을 포함한다.
(5) 복합 QR 코드 발행 요청자로부터 수령한 데이터 영역에 격납된 정보 (URL에 한정되지 않음)로부터 QR 코드를 생성하고, 암호화 정보는 QR 코드로 정의되는 복수의 셀로부터 형성되는 도트 코드의 데이터 영역에 격납된다. 해당 데이터 영역은 물리적으로 규정되지 않아도 논리적으로 규정되어도 된다. 또한, 암호화 정보는 QR 코드에 격납해도 좋다.
(6) 완성된 복합 QR 코드는 발행 요청자에게 송신되고, 발행 요청자는 복합 QR 코드를 매체에 형성(인쇄, 각인, 디스플레이 등에 표시하여 복합 QR 코드를 인식할 수 있는 모든 방법을 포함)하여 제3자에게 제공한다.
(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 코드로부터 판독한 정보를 바탕으로 리버스 엔지니어링을 실시함으로써 티켓번호 발행을 제3자가 실시할 수 있을 가능성이 높다. 티켓번호 발급 절차를 알면 서로 다른 티켓번호를 쉽게 생성할 수 있다.
복합 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에 즉시 통보하고 상품 구매 결제가 완료된다. 또한, 구입자의 스마트폰에는 구매품 정보나 구입 점포 정보 등의 정보가 전송되어 「결제」, 「중지」나 「일시불」「할부」 등의 아이콘이 표시되어 선택하여 결제해도 된다. 또한, 결제가 안 될 경우 신용카드 초과 이용이나 선불카드, 은행계좌로 잔금이 부족할 때도 이 정보가 스마트폰에 표시되어도 좋다. 점포측의 시스템이 구입품의 품목이나 단가, 지불 합계액 등을 인쇄한 인쇄 매체를 구입자에게 제공하거나, 또는 해당 내용을 디스플레이에 표시해 구입자가 확인한 후, 크레디트 카드등으로 결제하면 된다.
또 하나의 실시예에서는, 점포측이 POS의 디스플레이(스마트폰도 된다)에 복합 QR 코드를 표시해, 구입자가 해당 복합 QR 코드를 판독하면, 구입품의 품목이나 단가, 지불 합계액이 표시되고, 「결제」, 「중지」나 「일시불」 「할부」등의 아이콘이 표시되어 선택하면, 금융결제 서버에 그러한 결제 정보가 송신되고, 결제 승인이 되면 점포측의 POS에 즉시 통지되어 상품의 구입이 완료된다. 선불 카드나 은행 계좌에서 잔금이 부족한 경우는 잔액이나 부족분 등이 표시된다. 또한, 카드를 상대방에게 건네지 않는 것은, 카드의 정보가 용이하게 복사되지 않는 것을 의미하고 있어, 제3자의 위장 피해를 억제할 수 있다.
(송금 처리에의 적용)
또한, 개인 간에 송금하고 싶은 경우, 송금자가 금액을 스마트 폰에 입력하면, 송금자와 액수 등의 송금 정보가 등록된 복합 QR 코드가 표시된다. 상대방이 자신의 스마트폰으로 판독하고, 「확인」아이콘을 터치하면 송금자에게 통지되고, 누구에게 얼마가 송금되는지가 표시되며, 「결제」아이콘을 터치하면, 상대에게 송금이 실시되어 개인간의 금융거래가 성립된다. 다른 방법으로는 상대방의 스마트폰으로 송금처 정보 등이 등록된 복합 QR 코드를 표시하여 송금자의 스마트폰으로 읽으면 송금처 정보가 표시되고 금액을 스마트폰에 입력하여 「결제」 아이콘을 누르면 상대방에게 송금이 실시되어 개인간 금융거래가 성립된다. 이 때, 복합 QR 코드에 사진 등의 본인정보가 등록되어 있으면, 수금자의 본인확인이 용이해진다. 어떤 경우도 본인 이외의 제3자가 송금할 수 없도록 보안을 높이기 위해 「결제」 아이콘을 탭할 때에 패스워드를 입력해도 된다. 이러한 금융거래에 관해 금액, 날짜 이외에 '대차'나 '증여', '대가' 등을 분류해 기록으로 남길 수도 있다.
(쿠폰으로서의 이용)
포인트나 쿠폰, 스탬프에서의 이용에서는 고객이 혜택을 획득할 경우에, 혜택을 획득할 수 있는 복합 QR 코드를 혜택 제공자의 시스템이 어디서나 형성(인쇄 또는 디스플레이 표시)되어 고객의 스마트폰으로 판독함으로써 혜택을 받을 수 있다. 또한, 혜택 제공자의 시스템은 고객의 스마트폰으로 표시한 복합 QR 코드를 인식하여 전화 회선, 와이파이, 블루투스 등 다양한 통신수단으로 고객의 스마트폰에 혜택을 부여하거나 이용한 혜택을 소멸할 수 있다. 해당 복합 QR 코드에는 통신사의 전화번호와 주소, 휴대폰 ID, 회원번호 등을 포함할 수 있다.
(증명서로서의 이용)
시스템이 면허증이나 건강보험증, 학생증, 사원증, 회원카드, 여권 등 본인을 확인하는 경우, 본인이 해당 카드를 제시하지 않아도 해당 정보를 도트코드에 격납하여 본인이 복합 QR 코드를 스마트폰에 표시해도 된다. 시스템은 복합 QR 코드 판독 장치에서 도트코드를 판독하고, 판독 장치에 대하여 필요한 정보를 표시하게 하며, 본인에게 생년월일과 주소 등을 알려 받아 본인임을 확인할 수 있다. 또한, 인쇄 매체나 디스플레이 등에 형성된 복합 QR 코드의 판독은, 스마트폰에 탑재한 전용 애플리케이션에 의해서 실시할 수도 있다. 특히, 사진도 도트코드에 격납할 수 있으므로, 종래의 사진을 보는 본인 확인도 카드가 없어도 가능하게 된다. 확인을 하는 상대방의 시스템에 이들 카드정보가 넘겨져도 우체국이나 병원에서는 카드를 복사하는 것이 습관인데, 오히려 스마트폰(전용 앱)에 의한 복합 QR 코드 표시나 판독, 전용 판독 장치에 의한 복합 QR 코드 판독에서는 판독 데이터에 포함되는 사진이나 생년월일, 주소 등의 일부만을 표시하고 기타 정보는 숨김으로써 보안을 높일 수 있다. 또한, 판독한 복합 QR 코드를 시간이나 장소 등과 함께 이력을, 판독한 시스템이 추적할 수 있으므로 빅 데이터로서도 이용 가능하게 된다. 또한, 카드를 상대방에게 건네지 않는 것은, 카드의 정보가 용이하게 복사되지 않는 것을 의미하고 있어, 제3자에 의한 위장 피해를 억제할 수 있다.
(기록 수단으로서의 이용)
의료나 법정에서의 자료부터 부동산, 금융 관련 계약 등 다양한 분야에서 종이 매체의 정보를 보존하는 것이 의무화되어 있다. 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로 2 KB정도의 사진(사람의 눈에 의한 본인 확인을 할 수 있는 정도)의 사진 등의 컨텐츠를 취득할 수 있다. 또한, 최신의 정지 화상 압축 기술(BPG, 혹은 차세대 JPEG인 JPEGXL등 )에 의해서 얼굴 화상 인식을 충분히 견딜 수 있는 품질을 유지할 수 있다. 또한, 전용의 고해상도 복합 QR 코드 판독 장치를 사용하여, 인쇄된 QR 코드의 최대 정보량을 가지는 버전 40, 177×177 셀에 대응하는 복합 QR 코드에서는, 8배의 약 24 KB바이트의 정보를 격납할 수 있다. 적외선이나 블루투스 등 스마트폰으로 정보를 주고받을 수 있는 기능도 많이 있지만 모든 스마트폰에서 해당 기능을 사용할 수는 없다. 하지만 사용자가 복합 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 코드 판독을 통해 그러한 통신 환경이 없어도 어디서나 무상으로 정보를 취득할 수 있다. 또한, 앱에 번역·통역 등의 출력 기능을 갖추면, 하나의 복합 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 코드의 공식발행기관을 마련하고, 복합 QR 코드 사용자(사전에 공식발행기관이 승인한 사용자)가 URL 등의 데이터를 공식발행기관에 전송하면 도트코드에 전자서명된 복합 QR 코드가 생성되어 사용자에게 제공된다. 사용자는 복합 QR 코드임을 나타내는 인정마크(인정마크를 QR 코드 중앙에 배치해도 됨)와 함께 그 복합 QR 코드를 인쇄 또는 디스플레이에 표시하여 사용한다. 공식 발행기관은 복합 QR 코드 판독 앱을 무상으로 사용자에게 제공한다. 사용자는 인정 마크가 있으면 해당 앱에서 복합 QR 코드를 판독하여 진위 판정할 수 있다. 사업 모델은 i) 복합 QR 코드 사용자 승인 절차, ii) 복합 QR 코드 발행, ii) 복합 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, El Gamal 서명 등을 이용해도 된다. 이들 디지털 서명의 절차를 이용할 경우, 인증을 실행하는 주체(사용자 장치 UD1, 인증 서버 등)는 도 48의 T24와 같이 부호화 정보와 복호화 정보가 일치하는지 여부를 판정하는 대신, 디지털 서명의 기초가 되는 부호화 정보와 디지털 서명이 소정의 관계에 있는지 여부가 판정된다.
[실시형태 10]
(복합 코드 판독 정밀도의 향상을 위한 과제)
제 1 코드가 QR 코드인 경우에는, 위치 검출 패턴(파인더 패턴)으로 QR 코드의 영역 및 방향이 정해지고, 타이밍 패턴에 의해 각 셀의 중앙의 XY 좌표치가 계산된다. 그러나 QR 코드가 형성된 매체면에 대해 카메라의 광축이 수직이 아닌 경우(카메라가 매체에 대해 기울어져 있는 경우)나 매체가 구부러져 있는 경우에는 QR 코드가 변형되어 촬상된다. 그 변형의 정도에 따라 타이밍 패턴에 의해 계산되는 각 셀의 중앙의 XY 좌표치이 허용한도를 초과하여 어긋나 인접하는 셀 내의 좌표치가 구해져 버리는 경우가 있다. 이러한 셀 중앙의 XY 좌표치의 어긋남이 발생하면 셀의 명암 판정을 정확하게 판정할 수 없는 경우가 있다. 그래서 QR 코드에서는 얼라인먼트 패턴에 의해 좌표치를 보정하여 각 셀의 중앙 XY 좌표치의 정밀도를 높이려고 고안이 이루어져 있다. 그 후, 해당 좌표치의 위치나 근방의 소정의 면적의 영역이 명암 중 하나인가를 판정하여 QR 코드에 저장된 수치 데이터를 취득한다. 이 경우 중앙 좌표치의 정밀도는 해당 셀의 명암을 판정할 수 있는 셀 내이면 되며, 반드시 셀의 중앙이 아니어도 좋은 레벨이다. 그러나, 제 1 코드의 셀 중앙 좌표치를 바탕으로 셀 내에 형성된 제2 코드의 마크 배치에서 수치 데이터를 취득하는 경우에는 해당 마크의 배치를 적정하게 인식할 수 있는 정도의 정밀도가 요망된다. 그래서 정밀도를 높이기 위해 제1 코드의 셀 중앙 좌표치를 소정의 방법으로 보정하거나 별도로 제2 코드의 마크 모양이나 배치에서 구하는 것이 바람직하다.
이하에, 제 2 코드의 마크로서 도트를 사용했을 경우의 셀 중앙 좌표치의 계산 방법과 수치 데이터를 취득하는 과정을 설명한다. 도 61은 셀 내의 정보 도트의 배치 후보 위치를 도 62와 같이 8개소를 배치한 실시예이다. 도 62는 하나의 셀 내 도트의 배치 위치를 예시하는 그림이다. 8개소의 도트 배치 여부에 따라 8bit의 수치 데이터를 정의할 수 있다. 도트의 배치는 동심원 상에 대략적으로 등간격(그림에서는 45도 마다)으로 배치되어 있기 때문에, 배치 위치의 정밀도를 확보하기 위해서는 2400dpi 정도 이상의 고해상도 인쇄기로 한다. 도 61은 복합 코드의 일부를 나타낸 사례이며, 밝은 색 셀에만 정보도트를 배치해 도트 코드를 형성하고 있다. 또한, 도시하지 않지만, 정보 도트를 어두운 색 셀에 배치해도 좋고, 양쪽 모두에 정보 도트를 배치해도 좋다. 도 63은 QR 코드 사양에 따라 구한 셀의 중앙 좌표 위치가 셀의 본래 중앙에서 어긋나는 화상의 예이다. 도 63의 예에서는 십자인(十印)으로 표시한 위치가 제 1 코드(그림에서는 QR 코드)로 셀의 중앙으로 구한 좌표 위치이지만 셀의 중앙에서 벗어나 있는 것을 알 수 있다. 본 실시형태에서는 이 어긋난 위치를 X 표시로 나타낸 셀의 적정한 중앙 좌표치로 보정하는 방법을 설명한다.
(셀 중앙 좌표치 계산)
1개의 셀에서 P1(X1, Y1)의 십자인으로부터 상하 방향으로 셀의 명암이 변화하는 경계를 검색하고, 상하 방향 2개의 경계 좌표치 B1U(X1, Y1U)와 B1D(X1, Y1D)를 구한다. 여기서, Y좌표의 차분치 Y1U-Y1D는 제 1 코드로 취득한 셀 사이즈와 동일한 정도이므로, 상하 방향 1개의 밝은 색 셀임을 알 수 있으며, X1C = X1, 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)가 구해지며, X로 표시된 셀의 중앙 좌표치 P'1(X'1C, Y'1C)가 구해진다.
다음으로. 다른 셀에서 P2(X2, Y2)의 십자인에서 상하 방향으로 셀의 명암이 변화하는 경계를 검색하고, 상하 방향 2개의 경계 좌표치를 B2U(X2, Y2U)와 B2D(X2, Y2D)를 구한다. 여기서, Y좌표의 차분값 Y2U-Y2D는 제 1 코드로 취득한 셀 사이즈와 동일한 정도이므로, 상하 방향에는 1개의 밝은 색 셀임을 알 수 있고, X2C=X2와 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)가 구해지며, X로 표시된 셀의 중앙 좌표치 P'2(X'2C, Y'2C)가 구해진다. 또한, 마찬가지로 선형 보완하여 X'3C=X2L+(X2R-X2L)×3/4와 Y'3C=Y'2C에 의해 P'3(X'3C, Y3C)를 구해도 된다. 또한, 전술과 같이, P3(X3, Y3)를 기본으로 P'3(X'3C, Y3C)를 구해도 된다. 또한, P'4부터 P'6에 대해서도, 전술과 같은 방법으로 구할 수 있다.
(도트의 추출과 수치 데이터의 취득)
판독 장치가 도트를 추출하여 도트의 중심점을 구하고, 도트 코드의 수치 데이터를 취득하는 방법을 도 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>Bi 동시에 Bi<αBi+n, ii)αBi-n>Bi 또는 Bi<αBi+n 2가지 판정방법이 있다. n 은, 대상 픽셀과 n개 떨어진 픽셀과 비교하는 것을 나타내고 있다. i)는 대상으로 하는 픽셀 Bi가 도트인 것을 주사선 상의 좌우의 양쪽 모두에서 상대 역치를 만족하는 것이며, 조금 좁게 도트로서 판정된다. 한편, ii)는 대상으로 하는 픽셀 Bi가 도트인 것을 주사선 상의 좌우의 어느 쪽으로부터의 상대 역치(변화율)를 만족하는 것이며, 조금 넓게 도트로서 판정된다. 그 결과, 도 68 은 역치를 약하게 했을 경우(절대 역치를 높이거나, 상대 역치를 작게 했을 경우)의 결과이다. 도 69는, 역치를 엄격하게 하는 경우(절대 역치를 낮춰 상대 역치를 크게 했을 경우)의 결과이다. 어느 경우든 도 71, 도 72와 같이 정보도트의 중심 좌표치가 바운딩 박스 내에 포함되어 있으며 판독 장치(실시형태 1에서 6 참조)는 도트 코드로 정의된 수치 데이터를 취득할 수 있다.
또한, 어두운 색(또는 밝은 색)의 도트의 중심 좌표치 DC(Xc, Yc)는, 2치화된 어두운 색(또는 밝은 색)의 픽셀로부터 형성되는 도트의 중심으로부터 계산되어 어두운 색(또는 밝은 색)으로 2치화된 n개(i=1~n)의 픽셀의 좌표치를 Di(Xi, Yi)라고 하면, Xc = ∑i=1~n Xi/n, Yc = ∑i=1~n Yi/n, Yc = ∑i=1~n Yi/n 으로 구한다. 본 계산은 다른 실시예의 도트의 중심 좌표치의 계산에 이용되어도 좋다.
(기준 도트를 어두운 색 셀에 배치한 밝은 색 셀 중앙 좌표치 계산)
제 1 코드로 계산된 셀 중앙 좌표치를 사용하지 않고, 어두운 색 셀에 배치한 밝은 색의 기준 도트를 통해 직접적으로 셀 중앙 좌표치를 계산하는 방법을 도 73, 도 74에서 설명한다. 도 73은, 도 62와 같이 셀 내의 정보 도트의 배치 후보 위치를 설정한 실시예이다. 도 73에서도 도 62와 같이 밝은 색 셀에만 정보 도트가 배치된다. 단, 도 73에서는 어두운 색 셀에만 기준 도트를 배치하여 도트 코드를 형성하고 있다. 도 73에서는, 도시하지 않지만, 정보 도트를 어두운 색 셀에, 기준 도트를 밝은 색 셀에 배치해도 된다. 도 73에서 어두운 색 셀에 배치한 밝은 색 기준 도트는 제 1 코드로 계산된 어두운 색 셀 내의 중앙 좌표치 주변의 연속된 어두운 색 영역에서 밝은 색 도트를 쉽게 검색할 수 있다. 제 1 코드로부터 계산된 어두운 색 셀 내의 중앙 좌표치를 사용하지 않아도, 어두운 색 영역이 연속되는 영역에 밝은 색 도트가 존재하는지를 검색해도 된다.
도 74는, 제 1 코드에 의해서 셀의 중앙으로서 구한 좌표 위치가 셀의 본래의 중앙에서 벗어나 있는 화상의 예이다. 도 74에서는, 십자인(十印)으로 나타내 위치가 제 1 코드에 의해서 셀의 중앙으로 구해진 좌표 위치이지만, 셀의 중앙에서 벗어나 있는 것을 알 수 있다. 이 어긋난 위치에서 X 표시로 나타낸 셀의 적정한 중앙 좌표치를 구하는 방법을 이하에서 설명한다.
우선, 판독 장치는 어두운 색 셀에 배치한 기준 도트의 위치를 검색한다. 검색 방법으로서는, 판독 장치는, 제 1 코드로 구할 수 있던 어두운 색 셀의 중앙 좌표치를 기점으로 주변의 어두운 색 셀 내로부터 소정의 역치를 이용하고, 기준 도트의 농담도가 높은 영역을 검색하여, 해당 영역의 중심 위치를 구해 기준 도트의 중심 좌표치로 해도 좋다. 다음으로, 기준 도트의 중심위치끼리 상하좌우 방향으로 가상의 직선으로 연결하고, 그 교점의 좌표를 밝은 색 셀의 중앙 좌표치로 한다. 교점이 존재하지 않는 밝은 색 셀에는 다른 상하좌우 방향에서 취득한 교점에서 내삽 또는 외삽하여 구해도 좋다.
(기준 도트를 밝은 색 셀에 배치한 셀 중앙 좌표치의 계산)
제 2 코드에서 밝은 색 셀의 중앙에 기준 도트를 배치하고, 그 기준 도트를 검색하여 셀의 중앙 좌표치를 계산하는 방법을 도 75에서 도 78로 설명한다. 도 76은, 도 62와 같이 셀 내의 정보 도트의 배치 후보 위치를 설정하고, 한층 더 중앙에 기준 도트를 배치한 실시예이다. 도 75는 복합 코드의 일부를 나타낸 사례이며, 밝은 색 셀에만 기준도트과 정보도트를 배치해 도트 코드를 형성하고 있다. 도시하지 않지만 기준 도트과 정보 도트를 어두운 색 셀에 배치해도 된다. 이 기준 도트를 인식함으로써 기준 도트에서 거리 및 방향으로 배치되어 수치 데이터가 정의되는 정보 도트의 배치를 보다 정확하게 인식할 수 있다.
도 77은, 제 1 코드에 의해서 셀의 중앙으로서 구한 좌표 위치가 셀의 본래의 중앙에서 벗어나 있는 화상의 예이다. 도 77에서는 십자인(十印)으로 표시한 위치가 제 1 코드에서 셀의 중앙으로 구한 좌표 위치이지만, 셀의 중앙에서 벗어나 있는 것을 알 수 있다. 이 어긋난 위치에서 X 표시로 나타낸 셀의 적정한 중앙 좌표치를 구하는 방법을 이하 설명한다.
우선, 판독 장치는 밝은 색 셀에 배치한 기준 도트의 위치를 검색한다. 검색 방법으로는, 판독 장치는, 선택한 제 1 코드에서 구한 밝은 색 셀의 중앙 좌표치 근방의 도트가 기준 도트인지 다른 밝은 색 셀에 배치된 도트와의 배치 관계에서 판정한다. 즉, 판독 장치는 해당 도트에서 직선상으로 소정의 간격으로 배치되어 있는 도트인지 아닌지를 판정하면 된다. 이 조건을 만족할 수 없을 경우에는 판독 장치는 다음에 근방의 도트에서 상기 조건을 충족하는지의 판정을 반복하고 기준 도트를 인식한다. 한편, 판독 장치는 도 63에서 설명한 방법으로 셀 중앙 좌표치를 계산하고, 그 좌표치에 가장 가까운 도트를 기준 도트해도 좋다. 또한, 기준 도트를, 정보 도트와 크기나 형상, 색, 배치 패턴(기준 도트는 복수여도 된다)을 다르게 함으로써, 상기와 같은 셀 중심 좌표치의 보정을 걸지 않아도, 판독 장치는, 기준 도트를 용이하게 인식할 수 있다.
또한, 위에서 제시한 기준 도트는 반드시 셀 중앙에 배치된 도트가 아니더라도 기준 도트로 판별할 수 있다면 셀 내 어디에 배치해도 좋다. 도 78은 제2 코드의 방향성(제2 코드의 규칙으로서 방향은 제1 코드와 동일한 것으로 해도 된다)과 기준 도트의 중심 위치 P0로부터의 거리와 방향으로 설정되는 가상점 P1 ~ P8을 중심으로 한 원형의 바운딩 박스를 도트의 사이즈와 같은 정도로 나타낸 그림이다. 이 가상점은 제 2 코드 규칙에 따른 정보 도트의 배치 후보 위치이다. 여기에서는 판독 장치는 바운딩 박스 내에 도트의 중심 좌표치가 포함되는지 여부를 판정하여 수치 데이터를 취득한다. 또한, 바운딩 박스의 사양은 도 64와 같다.
(기준 도트를 밝은 색 셀과 어두운 색 셀에 배치한 셀 중앙 좌표치의 계산)
제 2 코드에서 밝은 색 셀과 어두운 색 셀의 중앙에 기준 도트를 배치하고, 그 기준 도트를 검색하여 셀의 중앙 좌표치를 계산하는 방법을 도 79 및 도 80에서 설명한다. 도 79는 복합 코드의 일부를 나타낸 실시예로, 밝은 색 셀과 어두운 색 셀에 기준도트를, 밝은 색 셀에만 정보도트를 배치하여 도트코드를 형성하고 있다. 도시하지 않지만 정보 도트를 어두운 색 셀에 배치해도 되고 양쪽에 정보 도트를 배치해도 된다. 어두운 색 셀에 배치한 밝은 색의 기준 도트에 대해서는, 판독 장치는, 제 1 코드로부터 계산된 어두운 색 셀 내의 중앙 좌표치 주변의 연속하는 어두운 색 영역에서 밝은 색 도트를 용이하게 검색할 수 있다. 판독 장치는, 제 1 코드로부터 계산된 어두운 색 셀 내의 중앙 좌표치를 사용하지 않아도, 어두운 색 영역이 연속하는 영역에 밝은 색 도트가 존재하는지를 검색하면 된다. 이 기준 도트를 인식함으로써 기준 도트의 중심 위치로부터의 거리 및 방향으로 배치되어 수치 데이터가 정의되는 정보 도트의 배치를 보다 정확하게 인식할 수 있다.
도 80은, 제 1 코드에 의해서 셀의 중앙으로서 구한 좌표 위치가 셀의 본래의 중앙에서 벗어나 있는 화상의 예이다. 도 80에서는 십자인으로 표시한 위치가 제 1 코드에서 셀의 중앙으로 구한 좌표 위치이지만 셀의 중앙에서 벗어나 있는 것을 알 수 있다. 이 어긋난 위치에서 X 표시로 나타낸 셀의 적정한 중앙 좌표치를 구하는 방법을 이하 설명한다. 판독 장치는 우선 어두운 색 셀에 배치한 기준 도트의 위치를 검색한다. 검색 방법으로서는, 판독 장치는, 제 1 코드로 구할 수 있던 어두운 색 셀의 중앙 좌표치를 기점으로 주변의 어두운 색 셀 내로부터 소정의 역치를 이용하고, 기준 도트의 농담도가 높은 영역을 검색하여, 해당 영역의 중심 위치를 구해 기준 도트의 중심 좌표치로 해도 좋다. 다음으로, 기준 도트의 중심위치끼리 상하좌우 방향으로 가상의 직선으로 연결하고, 그 교점의 좌표를 밝은 색 셀의 중앙 좌표치으로 한다. 교점이 존재하지 않는 밝은 색 셀에는 다른 상하좌우 방향에서 취득한 교점에서 내삽 또는 외삽하여 구하면 된다. 판독 장치는 이 밝은 색 셀의 중앙 좌표치 근방의 도트를 밝은 색 셀에 배치한 기준 도트의 위치로 한다. 또한, 위에서 제시한 기준 도트는 반드시 셀 중앙에 배치된 도트가 아니더라도 기준 도트로 판별할 수 있다면 셀 내 어디에 배치해도 좋다.
(기준 도트를 밝은 색 셀에 배치한 셀 중앙 좌표치의 계산(정보분할 셀의 경우))
제 2 코드에서 밝은 색 셀의 중앙에 기준 도트를 배치하고, 그 기준 도트를 검색하여 셀의 중앙 좌표치를 계산하는 방법의 다른 예를 도 81부터 84에서 설명한다. 도 82는 밝은 색 셀을 가로세로 4분할하여 16개의 분할 셀을 생성하고, 중앙의 분할 셀 4개를 제외하고 정보분할 셀의 배치 후보 위치를 12곳에 배치하고, 또한 밝은 색 셀의 중앙에 기준 도트를 배치한 실시예이다. 여기서 도 82와 같이, 밝은 색의 셀(또는 어두운 색의 셀)을 분할해, 기준 도트에 접촉하지 않고, 분할된 영역(분할 셀이라고도 한다)에 형성되는 어두운 색(어두운 색의 셀에 대해서는 밝은 색)의 영역에 의해 정보를 정의하는 경우의 해당 분할된 어두운 색(어두운 색의 셀에 대해서는 밝은 색)의 영역을 정보 분할 셀이라고 한다.
밝은 색 셀에 포함되는 어두운 색 영역을 33% 이하로 했을 경우에 배치할 수 있는 정보분할 셀의 수는 (16/3)-1 (기준 도트 분) = 4개이며, 1개의 밝은 색 셀에 배치할 수 있는 정보분할 셀 수는 최대 4개이고, 정의할 수 있는 수치 데이터의 정보량은 12C4 + 12C3 + 12C2 + 12C1 + 12C1 + 12C0 = 794 가지의 조합이 있다. 즉, 29.63이며, 9bit 이상의 수치 데이터를 정의할 수 있다. 기준 도트는 중앙에 배치되어 있기 때문에 배치 위치의 정밀도를 확보하기 위해서는 1200dpi정도 이상의 고해상도 인쇄기로 인쇄하는 것으로 한다.
도 81은 복합 코드의 일부를 나타낸 실시예로, 밝은 색 셀에만 기준도트와 정보분할 셀을 배치해 분할 셀 코드를 형성하고 있다. 도시하지 않지만 기준도트와 정보분할 셀을 어두운 색 셀에 배치해도 된다. 이 기준 도트를 인식함으로써 기준 도트의 중심 위치로부터의 거리 및 방향으로 배치되어 수치 데이터가 정의되는 정보 분할 셀의 배치를 정확하게 인식할 수 있다.
도 83은 제 1 코드에 의해 셀의 중앙으로 구해진 좌표위치가 셀의 본래 중앙에서 벗어나 있는 화상의 예이다. 도 83에서는 십자인(十印)으로 표시한 위치가 제 1 코드에서 셀의 중앙으로 구한 좌표위치이지만, 셀의 중앙에서 벗어나 있는 것을 알 수 있다. 이 어긋난 위치에서 X 표시로 나타낸 셀의 적정한 중앙 좌표치를 구하는 방법은 도 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개이며, 정의할 수 있는 수치 데이터의 정보량은 16C7 + 16C6 + 16C5 + 16C4 + 16C3 + 16C2 + 16C1 + 16C0 = 26, 333 가지의 조합이 있다. 즉, 214.68이며, 14bit 이상의 수치 데이터를 정의할 수 있다. 또한, 밝은 색 셀에 포함되는 어두운 색 영역을 20% 이하로 했을 경우에 배치할 수 있는 정보 분할 셀의 수는, (25/5)-1 (기준 도트분)=4개이며, 1개의 밝은 색 셀에 배치할 수 있는 정보 분할 셀수는, 최대 4개이며, 정의할 수 있는 수치 데이터의 정보량은, 16C4 + 16C3 + 16C2 + 16C1 + 16C0 = 2,517 가지의 조합이 있다. 즉, 211.30이며, 11bit 이상의 수치 데이터를 정의할 수 있다. 또한, 도 45에 나타낸 것과 같이, 1 개의 셀을 5 × 5 pixel 로 인쇄하는 것은, 600 dpi의 프린터로도 인쇄 가능하다.
도 85는 복합 코드의 일부를 나타낸 실시예로, 밝은 색 셀에만 기준분할 셀과 정보분할 셀을 배치해 분할 셀 코드를 형성하고 있다. 도시하지 않지만 기준분할 셀과 정보분할 셀을 어두운 색 셀에 배치해도 된다. 판독 장치는 이 기준분할셀을 인식함으로써 기준분할셀의 중심위치로부터의 거리 및 방향으로 배치되어 수치데이터가 정의되는 정보분할셀의 배치를 정확하게 인식할 수 있다.
도 87은, 제 1 코드에 의해서 셀의 중앙으로서 구한 좌표 위치가 셀의 본래의 중앙에서 벗어나 있는 화상의 예이다. 도 87에서는 십자(十印)으로 표시한 위치가 제 1 코드에서 셀의 중앙으로 구해진 좌표위치이지만, 셀의 중앙에서 벗어나 있는 것을 알 수 있다. 이 어긋난 위치에서 X 표시로 나타낸 셀의 적정한 중앙 좌표치를 구하는 방법을 다음에 설명한다. 판독 장치는 먼저 밝은 색 셀에 배치한 기준분할 셀의 위치를 검색한다. 검색 방법으로는, 판독 장치는, 선택한 제 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개이며, 정의할 수 있는 수치 데이터의 정보량은 24C8 + 24C7 + 24C6 + 24C5 + 24C4 + 24C3 + 24C2 + 24C1 + 24C0 = 1,271,626과 같은 조합이 있다. 즉, 220.28이며, 20bit 이상의 수치 데이터를 정의할 수 있다. 또한, 밝은 색 셀에 포함되는 어두운 색 영역을 20% 이하로 했을 경우에 배치할 수 있는 정보 분할 셀의 수는, 25/5=5개이며, 1개의 밝은 색 셀에 배치할 수 있는 정보 분할 셀수는, 최대 5개이며, 정의할 수 있는 수치 데이터의 정보량은, 24C5 + 24C4 + 24C3 + 24C2 + 24C1 + 24C0 = 55,455가지 조합이 있다. 즉, 215.76이며, 15bit 이상의 수치 데이터를 정의할 수 있다. 또한, 도 45에 나타낸 것과 같이, 600 dpi의 프린터로 인쇄 가능하다. 또한, 600dpi보다 고해상도 인쇄기로 인쇄할 수 있는 것은 말할 필요도 없다.
도 89는 복합 코드의 일부를 나타낸 실시예이며, 밝은 색 셀에만 정보분할 셀, 어두운 색 셀에만 기준분할 셀을 배치해 분할 셀 코드를 형성하고 있다. 도시하지 않지만 정보분할 셀을 어두운 색 셀에, 기준분할 셀을 밝은 색 셀에 배치해도 된다. 판독 장치는, 어두운 색 셀에 배치한 밝은 색의 기준 분할 셀을 제 1 코드로부터 계산된 어두운 색 셀 내의 중앙 좌표치 주변의 연속하는 어두운 색 영역에서 밝은 색 분할 셀을 용이하게 검색할 수 있다. 판독 장치는, 제 1 코드로부터 계산된 어두운 색 셀 내의 중앙 좌표치를 사용하지 않아도, 어두운 색 영역이 연속하는 영역에 밝은 색 분할 셀이 존재하는지를 검색해도 된다.
도 91은, 제 1 코드에 의해서 셀의 중앙으로서 구한 좌표 위치가 셀의 본래의 중앙에서 벗어나 있는 화상의 예이다. 도 91에서는 십자인(十印)으로 표시한 위치가 제 1 코드에서 셀의 중앙으로 구한 좌표 위치이지만, 셀의 중앙에서 벗어나 있는 것을 알 수 있다. 이 어긋난 위치에서 X 표시로 나타낸 셀의 적정한 중앙 좌표치를 구하는 방법을 이하 설명한다. 판독 장치는 우선 어두운 색 셀에 배치한 기준분할 셀의 위치를 검색한다. 검색 방법으로는, 판독 장치는, 제 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)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)2×5/(0.169×0.169)=0.278(27.8%)로 33% 이하여서 QR 코드 판독에는 지장이 없다. 이 두 가지 패턴을 합성해서 기준 패턴으로 사용하면 된다. 물론, 기준 패턴을 3종 이상으로 분해해 복수의 셀에 패턴을 형성해도 되며, 어두운 색 셀(밝은 색 기준 도트) 또는 밝은 색 셀(어두운 색 기준 도트)의 적어도 어느 쪽에 배치해도 좋다. 이들 복수의 서로 다른 패턴을 각각 독립된 기준 패턴으로서 각각 대응하는 다른 배치 패턴의 정보 도트가 형성된 셀에 대해 대응하는 바운딩 박스를 설정하여 수치 데이터를 취득해도 된다.
도 105에서는, 도 77의 복합 코드에 기준 패턴을 형성한 실시예이지만, 정보 도트가 배치되는 밝은 색 셀에는 중앙에 도트가 배치되어 있지 않기 때문에, 기준 패턴을 용이하게 인식할 수 있다. 또한 밝은 색의 기준 도트가 중앙에 배치되는 어두운 색 셀에 기준 패턴을 형성할 경우 기준 도트의 수로 기준 패턴을 쉽게 인식할 수 있다. 또한, 기준 패턴은 어두운 색 셀(밝은 색 기준 도트)에서도 밝고 어두운 색 양쪽 모두에 형성해도 된다.
도 106에서는, 도 80의 복합 코드의 밝은 색 및/또는 어두운 색의 셀의 소정 간격 마다 기준 패턴을 복수 배치한 실시예이다. 이것에 의해, QR 코드가 변형하여 촬상되어 영역 마다에 변형의 정도가 변화하여도, 촬영한 복수의 기준 패턴으로, 그 주변의 셀에 형성되는 제2 코드의 바운딩 박스를 설정하면, 보다 정확하게 수치 데이터를 취득할 수 있다. 본 실시예에서는 수치 데이터를 정의하는 정보 도트는 셀의 중앙위치 P0을 정확하게 취득할 수 있다는 점에서 중앙의 기준 도트를 배치하지 않았기 때문에 기준 패턴을 쉽게 인식할 수 있다. 기준 도트를 배치할 경우 미리 정해진 배치 셀에 형성하면 된다. 또한, 도 61 ~ 도 78 및 도 79 ~ 도 92의 어느 실시예에서도 셀의 소정 간격마다 기준 패턴을 복수 배치해도 좋다.
도 107에서는 도 83의 복합 코드에 주변이 어두운 색 셀(또는 밝은 색 셀)로 둘러싸인 어두운 색 셀(또는 밝은 색 셀) 내에 도 4의 중심위치가 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.0452×5/(0.212×0.212)=0.225(22.5%)로 33% 이하이며, QR 코드 판독에는 지장이 없다.
이상, QR 코드가 형성된 매체면에 대해서 카메라의 광축이 수직이 아닌 경우(카메라가 매체에 대해서 기울어져 있는 경우)나 매체가 굴곡되어 있는 경우에는 QR 코드가 변형되어 촬영되기 때문에 보정은 하고 있지만, 정확한 셀 중앙의 좌표치를 취득할 수 없기 때문에 정확한 셀 중앙의 좌표치의 취득과 셀 내에 형성된 기준 패턴에 의해 셀에 정의된 수치데이터를 오인 없이 취득하는 방법을 설명하였다. 여기에서 도 74, 도 80, 도 91, 또는 다른 방법으로는 기준도트 또는 기준분할셀로 격자선을 그릴 수 있다. 이 격자선으로 둘러싸인 영역은 해당 위치 근방의 셀의 크기·형상을 나타내고 있으며, 셀의 변형 상황을 셀 중앙위치로부터의 거리와 방향에 의한 바운딩 박스의 중심이 되는 가상점과의 기하학적 배치관계에 반영시켜 바운딩 박스의 배치를 보정하고 해당 위치 근방의 정보도트나 정보분할 셀의 인식에 이용해도 된다. 이것에 의해 QR 코드가 변형되어 촬상되고 영역마다 변형의 정도가 변화해도 영역마다 격자의 형상에 의한 보정으로, 복합 코드에 기준 패턴을 형성하지 않고 복합 코드 판독 장치의 기억매체나 제 2 코드로부터 수치데이터를 취득하는 소프트웨어에 기록되어 기하학적 배치 관계를 이용해 보정하면 된다. 또한, 격자선에 의한 바운딩 박스의 배치 보정은, 다른 실시예와 조합하여 사용해도 좋다. 또한, 격자선을 생성하는 수단으로서 명암 셀의 경계를 검출하고, 그 경계를 따라 격자선을 그어도 된다. 다만, 인쇄의 정도나 QR 코드를 촬영했을 때의 촬상 화상이 회전·변형하고 있으면, 명암을 나타내는 픽셀의 경계 부분이 울퉁불퉁해 버리므로, 그것들을 평활화 또는 평균화해 격자선을 형성하는 것이 바람직하다.
도시하지 않지만, 기준점을 나타내는 마크의 형상, 크기, 색, 방향, 배치 패턴의 적어도 어느 하나에 의해 기준점을 나타내는 마크가 형성된 셀에 수치 데이터가 정의되어도 된다.
<제 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 코드를 판독하고, 모든 셀의 기준점의 좌표치가 계산되어 + 표시되는 기준점의 좌표치도 취득할 수 있다. 또한, 이 + 표시는 복합 코드에는 그려지지 않는다. 이 후, 기준점 또는, 기준점을 포함한 소영역(적어도 소정 영역의 일부)의 색을 인식하여 셀의 색 식별을 실시한다. 이 실시예에서는, 흑색의 어두운 색 영역 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 좌표축을 가지는 2차원 화상 일시 기억 영역)에서, 실시형태 10의 도 66 ~ 70의 설명과 같이, 2치화된 n개의 픽셀(화소)로 형성되는 소정 영역 2-0의 중심 좌표치(XC, YC)를, 각 픽셀의 중심 좌표치를(Xi, Yi)로 하고, Xc = (∑Xi, i= 1~n)/n, Yc = (∑Yi, 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-0이 백색의 밝은 색 영역 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)에서는, 110100110의 수치정보가 정의되어 있다.
본 실시예에서는 제 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-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 코드 리더로 첫 번째 코드를 판독하는 것이 곤란하게 된다.
도 117은, 촬상에 의해 본래의 위치로부터 어긋난 위치에 검지된 기준점을 적정한 기준점에 보정하는 방법을 나타내고 있다. 우선 밝은 색 및 어두운 색 셀에 배치한 기준점의 위치를 예를 들어 실시형태 5 및 실시형태 10에서 설명하는 여러 알고리즘 중 하나를 이용하여 구한다. 다음으로, 기준점끼리 상하·좌우 방향으로 가상의 직선으로 연결하고, 그 교점의 좌표치를 밝은 색 및 어두운 색 셀의 중앙 좌표치로 한다.
(실시예4)
도 118은, 소정의 위치에 배치된 셀에는 마크 3-0을 배치하지 않고, 셀의 소정 영역 2-0을, 소정 영역을 제외한 영역 2-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 코드 등 기존의 2차원 코드의 인식률을 향상시키기 위해 적용하여 보다 정확한 기준점의 좌표치를 구하고 셀 식별에 사용해도 된다. 이 경우, 기준 셀을 소정의 간격으로 배치해도 되고, 소정의 범위 또는 모든 셀을 기준 셀로 해도 된다.
도 119에, 기준 셀의 배치 예로서, QR 코드 버전 6(41×41 셀)에 배치한 예를 나타낸다. QR 코드에서는 QR 코드 외주에 콰이어트 존 0-0이 둘러싸도록 설치되어, 그 내부의 좌측 상단, 우측 상단, 좌측 하단 코너에 파인더 패턴 0-1(각각 0-11, 0-12, 0-13)과 우측 하단 근방에서 하나 이상의 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차원 화상 일시 기억 영역)에 기록된 화상의 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 코드 리더에서는, 중심 좌표 위치의 명암을 기본으로 셀의 명암 판정을 실시하지만, 중심 좌표치가 산출되고 있어 셀의 구별도 명확하게 되어 있으므로, 어느 쪽이든 셀의 명암 판정이 가능하다(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 이 5×5 의 합계 25 셀을 필요로 하는데 대해, 기준 셀은 단 1 셀, 즉, 1/25 로 동등 이상의 역할을 수행할 수 있으므로, 그만큼, 데이터 영역을 늘릴 수 있다. 또한, 얼라인먼트 패턴 0-3을 일부 남기고, 기준 셀 등과 병용해도 된다. 이 경우 기존의 QR 코드 리더로는 읽을 수 없게 되어, 새로운 코드 리더가 필요하게 된다.
도 123 및 도 124에 의해 상세한 가상의 격자선 긋는 방법을 나타내고 있다. 먼저 도 123의 파선으로 나타낸 것과 같이, 기준 셀의 기준점을 가상의 선으로 연결한다. 다음으로, 도 124의 점선으로 나타낸 것과 같이, 파선의 내삽 또는 외삽에 의해서 내분점 또는 외분점을 구하고, 그러한 점들을 연결하면, 모든 셀을 통과하는 가상의 격자선을 형성할 수 있으며, 그 격자점에 의해 모든 셀의 기준점을 보정할 수 있다. 여기에서는 가로 방향으로
Figure pct00001
거리에서 균등하게 내분하고, 세로 방향으로
Figure pct00002
거리에서 내분하여 가로세로의 격자선을 구하고 있다. 또한, 기준 셀에는, 통상 정보를 부가하지 않지만, 부가해도 좋다. 기타 특정 셀에 대해서도 정보를 부가하지 않는 더미 셀이라도 좋다. 제 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-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픽셀로도 판독 가능하다. 현행 스마트폰 카메라의 일반적인 해상도가 1980×1080픽셀(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의 기준점의 좌표치를 계산한다. 그 기준점 또는 기준점을 포함한 소영역(적어도 소정 영역의 일부)의 색을 인식함으로써 셀의 색 식별을 실시한다. 이 실시예에서는, 흑색의 어두운 색 소정 영역 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 좌표축을 가지는 2차원 화상 일시 기억 영역)에 있어서, 실시형태 10의 도 66 ~ 70의 설명과 같이, 2치화된 n개의 픽셀(화소)로 형성되는 소정 영역 2-0의 중심 좌표치(XC, YC)를, 각 픽셀의 중심 좌표치를(Xi, Yi)로 하고, Xc = (∑Xi, i=1~n)/n, Yc는 소정 영역 2-01의 형상과 배치를 감안해서 1/6픽셀을 가산하고, Yc = 1/6 + (∑Yi, 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의 크기가 절반(구획을 2×2에서 1×2)으로도 충분히 검지 가능하다. 도 145에서는 기준점의 산출을 정밀하게 실시하기 위해 소정 영역 2-0의 크기를 실시예 8 ~ 실시예13과 마찬가지로 2×2의 구획으로 취하는 한편, 상기 마크 3-0을 실시예 8 ~ 실시예 13과 비교하여 구획수를 많게 하기 위해 절반인 1×2의 구획으로 취한 실시예이다. 여기에서는 도 145(a)와 같이 도 133(a)과 마찬가지로 6×6픽셀을 기준으로 하고 있지만, 소정 영역 및 각 마크의 크기에 맞추어 1개의 셀을 구획화한 구체적인 예로서 도 145(b)를 표기한다. 실시예 8 ~ 실시예 13의 경우와 마찬가지로, 특정 셀의 구성은 6×6픽셀에 한정되는 것은 아니며, 형성 및 판독이 가능하면 어떤 크기도 좋고, 종횡으로 다른 구획 수로도 좋고, 또한 각 구획의 형상이나 크기, 방향도 어떤 것이라도 좋다. 또한, 높은 정밀도로 기준점을 산출하기 위해서는, 소정 영역이 셀의 중심 구획을 차지해 기준점이 셀의 중심에 있는 것이 바람직하지만, 형성 및 판독이 가능하면, 어디에 있어도 좋다. 이 구체적인 예에서는 소정 영역으로서 가로 세로 2×2의 구획, 마크로 가로세로 1×2의 구획을 취하고 있는데, 형성 및 판독이 가능하면 어떤 형상이나 크기, 방향, 위치도 좋다. 또한, 같은 코드 내에서 이것들이 달라도 좋다. 이 실시예에서 소정 영역의 특징은 실시예 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 코드 부분을 판독할 수 있다. 이 경우의 특정 셀 1-0이 가지는 수치정보는 본래 8bit=256이지만, 256-(8C0 + 8C1)=247이 되어 겨우 9 감소할 뿐이다. 보다 바람직한 것은 동일 색의 마크 3-0을 적어도 3개를 배치함으로써 (32+4×3)/64=0.6875가 되고, 면적비가 2/3을 초과함에 따라 기존의 QR 코드 리더에서도 확실히 QR 코드 부분을 판독할 수 있다. 이 경우의 특정 셀 1-0이 가지는 수치정보는 256-(8C0 + 8C1 + 8C2)=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는, 전 셀 수(25×25=625)로부터 파인더 패턴 0-1(49×3=147), 분리 패턴 0-2(15×3=45), 얼라인먼트 패턴 0-3(25), 형식 정보 0-4(17+8×2=33)의 각 셀 수의 합계 250을 빼는 것으로 구한다. (2) 사용하는 리드·솔로몬 부호의 개수를 계산한다. 375/255+1=2, 따라서 각 RS부호의 부호길이는 375/2=187이 된다. (3) 소정의 비율의 부호화율의 리드·솔로몬 부호로 부호화한다. GF(28)(n, k, d)=(187, 148, 40)로부터 부호화 후의 정보량은 148×2=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 코드에 대응하는 정보를 처리한다(U26). 데이터 중에, 제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)의 중심 좌표치(1x, 1y)와 회전각(1θ)을 구한다. 다음으로, 그 후에 촬영하여 기록된 복합 코드(i=2~k)마다에, 복합 코드의 중심 좌표치(ix, iy)와 회전각(iθ)을 구하면, 복합 코드(i=1)에 대한, 이후의 복합 코드(1<i)의 중심 좌표치의 차분 △ix = ix-1x, △iy = iy-1y, △iθ = iθ-1θ가 구해진다. 여기서, 제 1 코드로 취득한 각 셀의 기준점 좌표치를 (1xj, 1yj)라고 하면, 복합 코드(i=1)의 중심 좌표치로부터 각 셀의 기준점까지의 거리는, 1xj-1x, 1yj-1y이기 때문에, 복합 코드 번호 i의 셀 번호 j의 기준점 좌표치(1xj, 1yj)는, 아래 식에 의해 구해진다.
Figure pct00003
또한, 손떨림은 대부분이 평면적인 이동·회전이고, 상기 식은 스마트폰 등의 복합 코드 표시 장치 면에 대해 복합 코드 판독 장치의 광축이 기울어지지 않은 것을 전제로 한 근사식이다. 또한, 광축의 기울기도 고려에 넣는 경우는, 촬상된 복합 코드의 변형 상황(예를 들면, 코너 4점의 좌표치로부터 구할 수 있는 변형)으로부터, 보정할 수도 있다.
ii) 최초의 복합 코드(i=1)의 후에 촬상된 복합 코드(i=2~k) 마다 제 1 코드를 판독하여 각 셀의 기준점 좌표치만을 산출하고, 제2 코드의 각 셀의 기준점 좌표치로 해도 좋다.
iii) 프레임(i=1) 후에 프레임(i=2~k)별로 촬영된 복합 코드의 제2 코드 기준 셀에 설치된 기준점이나 기준 패턴에 포함되는 기준점, 나아가서는 수치정보가 격납된 특정 셀에서 산출 가능한 기준점을 기초로, 실시형태 5 및 실시형태 10에서 설명하는 여러 알고리즘 중 하나를 이용하여, 제2 코드의 기준점 좌표치를 구해도 좋다.
제2 코드의 기준점 좌표치의 보정 방법으로서 상기 3종을 설명하였으나, 이들 기준점 좌표치로서 QR 코드 등의 2차원 코드에서는 각 셀의 중심 좌표치를 이용해도 좋다는 것은 말할 필요도 없다.
도 153은, 시계열 복합 코드 표시를 나타내는 시간축(프레임 번호)을 가로축으로 한 그래프로 초당 60프레임을 표시하고 있다. 어느 것이든, 같은 번호의 복합 코드를 몇 프레임 표시하고, 판독 장치로 촬영해 복수 프레임을 기록하고, 그 중에서 양호하게 촬상된 복합 코드를 판독하도록 해도 좋다. 도 153(a)는 복합 코드 번호(1) ~ (10)에서 1개의 데이터를 형성하고 있다. 해당 데이터를 형성하고 있는 10개(k=10)의 복합 코드는 4프레임씩 표시되고 있지만, 표시 장치의 프레임 레이트 및 판독 장치의 프레임 레이트 및 그 품질에 따라 표시 프레임 수를 설정하면 된다. 하나의 데이터를 형성하는 복합 코드의 개수(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 코드와 같은 기존의 2차원 코드라면, 해당 2차원 코드 리더로 어떤 타이밍에서도 판독할 수 있다.
시계열 복합 코드의 판독은 도 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) 티켓 본인 확인 시스템
콘서트나 이벤트, 교통 티켓 등 다양한 티켓에서, 전매나 '제3자의 사칭'을 방지하기 위해서, 티켓 취득시에 스마트폰으로 본인 사진을 촬영하고, 복합 코드에 취득 티켓 정보와 함께 본인 사진을 격납한다. 티켓 사용시 티켓 발행자측이 티켓사용자의 스마트폰에 표시된 복합 코드를 판독하고, 취득 티켓정보의 인증과 표시된 얼굴 사진을 통한 본인확인을 동시에 실시함으로써 전매나 '제3자의 사칭'을 방지할 수 있다. 제3자가 티켓을 취득하여 본인에게 제공하는 것을 허가하는 경우 본인 사진을 제3자에게 제공하도록 하면 된다. 또한, 취득자가 본인인 경우, 자신의 촬영이 끝난 사진을 선택할 수 있다. 또한, 티켓 사용자 얼굴 인근에 복합 코드가 표시된 스마트폰을 마주한 상태에서 초고정밀 카메라를 탑재한 복합 코드 리더로 티켓 사용자의 얼굴과 복합 코드를 동시에 판독함으로써, 티켓 사용자의 얼굴과 복합 코드 리더에 격납된 얼굴 사진을 얼굴 인증하면 동일인인지 확인이 자동으로 가능해진다. 물론, 티켓 사용자의 얼굴 촬영과 복합 코드 리더에 저장된 얼굴 사진 판독은 별도의 디바이스에서 해도 된다. 얼굴 조회를 대신하여 자신의 손가락의 지문이 있는 부분을 촬영하여 복합 코드 리더에 격납해 놓고, 본인 손가락과 복합 코드를 동시에 판독하여 지문 조회를 할 수 있도록 해도 좋다.
(실시예 20) 본인 확인 앱
제3자가 본인을 확인하기 위한 전용 앱으로 다양한 상황에서 제3자가 본인을 확인할 수 있도록 복합 코드에 본인의 얼굴 사진을 격납한다. 본인확인 앱에 본인 정보를 등록할 때 본인의 사진을 촬영하는 것 외에 주민표주소, 호적, 마이넘버, 보험증, 면허증, 여권, 학생증, 사원증 등 소정의 개인정보를 입력 또는 촬영하여 등록하고, 본인임을 전용 앱 제공기관이 승인한다. 본인 사진이 게재된 면허증이나 여권 등을 동시에 촬영하고 복합 코드에 저장된 본인 사진과 대조하면 더욱 바람직하다. 나이가 들수록 얼굴이 변해 본인을 인식하기 어려워진다. 그래서 정기적으로 본인의 사진을 다시 찍도록 본인 확인 앱이 음성이나 텍스트 등의 알람으로 본인에게 알린다. 그 때, 촬영한 사진과 복합 코드에 격납되어 있는 사진을 대조하여, 동일 인물로서 승인할 수 없는 경우는, '제3자의 사칭'으로서 판단해, 본인 확인 앱을 사용할 수 없게 한다. 이처럼 얼굴의 변화를 따라가기 위해 정기적으로 본인의 사진을 촬영해 복합 코드에 저장하면 제3자가 본인임을 확인할 수 없을 정도의 얼굴 변화가 되지는 않는다. 비정기적으로도 화장 변화나 성형에 따른 큰 얼굴 변화가 있는 경우에도 본인 소유의 스마트폰으로 셀카나 제3자가 촬영한 본인의 얼굴 사진을 본인 확인 앱이 항상 자동으로 인식하며 얼굴에 큰 변화를 감지하면 본인 사진을 다시 찍도록 알람으로 본인에게 알려주면 된다. 또한, 최근 셀카나 제3자가 촬영한 본인의 얼굴사진을 복합 코드에 담아도 된다. 또한, 정지화면 복합 코드에서는, 본인을 식별할 수 있는 레벨의 칼라 사진을 격납할 수 있지만, 시계열 복합 코드에서는 보다 선명한 칼라 사진이나 짧은 동영상을 격납할 수 있다.
(실시예 21) 이동 정보 제공 수단
버스나 철도 등의 이동수단에서 그 루트나 역 및 인근 시설, 관광 등 다양한 정보를 복합 코드에 격납하여, 차 내나 역에 게시함으로써 승객은 본래의 QR 코드에 다 담을 수 없는 정보를 복합 코드에서 스마트폰으로 취득할 수 있다. 복합 코드를 디스플레이에 표시하면 이동 중의 위치도 포함해 이동 시에 변화하는 날씨 등의 정보도 취득할 수 있다. 차 내에 설치된 디스플레이 정보로는 자신이 알고 싶은 정보를 스스로 선택할 수 없었지만, 복합 코드에는 다양한 정보가 링크돼 있어 스마트폰을 사용해 원하는 정보를 얻을 수 있다. 또한, 택시를 사용했을 때도 출발지점에서 도착지점까지의 루트나 택시요금을 복합 코드에 격납하여 택시측 디스플레이로 표시함으로써 승객은 적절한 루트로 이동했는지 확인할 수 있어 복합 코드 결제를 적정하게 할 수 있다. 이 서비스가 보급됨으로써 '바가지'도 억제할 수 있다. 승객 쪽도 전용의 이동 지도 앱과 연동시키고, 어느 루트에서 목적지로 이동하고 싶은지를 복합 코드에 격납해서 운전자의 복합 코드 리더로 읽고 네비게이션에 의한 표시와 음성 출력으로 정확하게 승객이 원하는 루트를 운전자에게 전달할 수 있다.
본 발명과 관련된 복합 코드에 따르면, 제 1 코드만의 경우에 비해 제 1 코드 영역 내에 제 2 코드를 격납함으로써, 같은 코드 영역에서 다량의 정보를 격납하는 것이 가능해진다.
예를 들어, 제 1 코드가 QR 코드고, 제 2 코드가 도트 코드인 복합 코드를 인쇄한 경우에는 QR 코드만을 인쇄한 경우와 비교해 10배 이상, 복합 코드를 스마트폰 등의 화면에 표시했을 경우에는 도트 코드에 컬러 정보를 부여해 시간 변화시킴으로써 QR 코드의 100배 이상의 정보를 저장할 수 있다.
다량의 정보량을 저장할 수 있기 때문에 인터넷을 사용하지 않아도 수천 문자의 일문이나 사진, 음성정보 등도 저장할 수 있어 문서 관리부터 엔터테인먼트, 교육, 관광까지 폭넓게 활용할 수 있다. 또한, 기존의 QR 코드 리더로 QR 코드, 즉 제 1 코드에 격납된 데이터를 읽어낼 수 있다.
또한, 본 발명과 관련한 복합 코드는, 각종 인증에 이용하는 것에 적합하다. 예를 들어, 전자서명이나 URL의 진위판정을 가능하게 하는 QR 코드 인쇄나 자신이 보유한 스마트폰에 자신의 생체정보를 저장한 QR 코드를 표시하고, 상대방(장치도 포함)이 판독함으로써 본인확인 등을 용이하게 할 수 있다.
또한, 현재 QR 코드는 그 사양을 개시하고 있기 때문에 누구나 발행할 수 있으며, 제3자가 동일한 코드를 발행할 수 있다. 그러나, 본 발명과 관련한 복합 코드에서는 QR 코드 등에 더해, 은닉된 새로운 알고리즘으로 도트 코드 등의 마크(제 2 코드)가 형성되기 때문에 유니크한 복합 코드를 발행할 수 있게 되어, 제3자에 의해 동일한 코드가 발행될 가능성은 극히 낮고 지극히 보안성이 높다. 또한, QR 코드는 복사나 모방이 용이하여, QR 코드에 격납된 정보를, 숄더 해킹 등에 의해 의도하지 않은 제3자에게 취득되어 버릴 가능성이 있다. 그러나, 복합 코드에서는, 제 2 코드는 눈으로 보기 어렵고, 모방도 어렵다.
이상과 같이, 본 발명과 관련한 복합 코드는, 종래의 1 차원 및 2 차원 코드에서는 실현할 수 없는 많은 이점을 가지고 있다.
<기타 태양>
본 실시형태는 다음과 같은 형태를 포함한다.
(태양 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, Yc)은, n개(i=1~n) 픽셀의 좌표치를 Di(Xi, Yi)라고 하면, Xc=(ΣXi, i=1~n)/n, Yc=(ΣYi, 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 ~ 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. 제 1 항에 있어서,
    상기 소정 위치에서의 상기 마크의 배치 유무에 따라 상기 제 2 코드의 상기 데이터가 정의되는, 복합 코드.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 소정 영역은, 임의의 형상인, 복합 코드.
  4. 제 1 항 내지 제 3항 중 어느 한 항에 있어서,
    상기 복수의 셀 중, 상기 특정 셀 이외의 셀의 적어도 일부가, 상기 소정 영역과 상기 소정 영역을 제외한 영역을 가지고, 서로 식별 가능한 색을 가지는, 복합 코드.
  5. 제 3 항에 있어서,
    상기 소정 영역은 상기 소정 영역을 제외한 영역으로 둘러싸이고, 서로 식별 가능한 색을 가지는,복합 코드.
  6. 제 1 항 내지 제 5항 중 어느 한 항에 있어서,
    상기 복수의 셀 내의 소정 영역은, 상기 각각의 셀의 색을 인식하기 위한 기준점을 포함하는, 복합 코드.
  7. 제 6 항에 있어서,
    상기 마크의 배치 위치는 적어도 상기 특정 셀 및 상기 특정 셀 이외의 셀의 적어도 일방의 상기 기준점을 토대로 설정되는, 복합 코드.
  8. 제 6 항에 있어서,
    상기 마크의 배치 위치는 적어도 상기 특정 셀의 상기 기준점에서 소정 방향으로 소정 간격을 두고 설정되는, 복합 코드.
  9. 제 6 항에 있어서,
    상기 기준점으로서 식별 가능한 상기 소정 영역에서 산출된 중심 좌표치를 바탕으로, 다른 상기 복수의 셀의 기준점의 좌표치이 산출되는, 복합 코드.
  10. 제 6 항 내지 제 9 항 중 어느 한 항에 있어서,
    식별 가능한 상기 마크의 배치 위치와 상기 기준점 및 제 2 코드 방향을 포함하여 형성되는 기준 패턴이 상기 복수의 셀 중 어느 하나에 배치되는, 복합 코드.
  11. 제 10 항에 있어서,
    상기 기준 패턴을 기초로, 상기 복수의 셀의 기준점으로부터의 상기 마크와의 기하학적 관계와 상기 제 2 코드의 방향을 기초로, 상기 데이터가 정의되는, 복합 코드.
  12. 제 10 항 또는 제 11 항에 있어서,
    상기 제 2 코드의 방향은, 상기 기준 패턴을 형성하는 마크의 형상, 배치 및 2 이상의 크기가 다른 마크 중 어느 하나에 의해 정의되는, 복합 코드.
  13. 제 6 항 내지 제 12 항 중 어느 한 항에 있어서,
    상기 제 2 코드의 방향은, 상기 제 1 코드의 방향과 동일한, 복합 코드.
  14. 제 6 항 내지 제 9 항 중 어느 한 항에 있어서,
    상기 기준점은 상기 각각의 셀의 중심인, 복합 코드.
  15. 제 6 항 내지 제 14 항 중 어느 한 항에 있어서,
    상기 기준점은 상기 각각의 셀의 소정 영역의 중심인, 복합 코드.
  16. 제 15 항에 있어서,
    상기 복합 코드가 촬영되어 기억 장치에 XY 좌표축을 가지는 2차원 촬상 화상(X, Y)에 있어서, n개의 픽셀로서 2치화된 상기 소정 영역의 중심(Xc, Yc)은, n개(i=1~n) 픽셀의 좌표치를 Di(Xi, Yi)라고 하면, Xc=(ΣXi, i=1~n)/n, Yc=(ΣYi, i=1~n)/n)인, 복합 코드.
  17. 제 1 항 내지 제 16 항 중 어느 한 항에 있어서,
    상기 소정 영역 면적은 상기 각 셀 면적의 1/10 이상인, 복합 코드.
  18. 제 1 항 내지 제 16 항 중 어느 한 항에 있어서,
    상기 소정 영역 면적은 상기 각 셀 면적의 1/20 이상인, 복합 코드.
  19. 제 1 항 내지 제 16 항 중 어느 한 항에 있어서,
    상기 소정 영역의 면적은 상기 각 셀 면적의 60% 정도 이상인, 복합 코드.
  20. 제 1 항 내지 제 19 항 중 어느 한 항에 있어서,
    상기 복수의 셀 내의 소정 영역의 색은, 상기 각각의 셀의 색으로서 인식할 수 있는 만큼의 소정 면적을 가지는, 복합 코드.
  21. 제 1 항 내지 제 20 항 중 어느 한 항에 있어서,
    상기 각각의 셀의 색은, 상기 식별 가능한 2 이상의 색 중 어느 하나의 색의 농도를 소정량 포함함으로써, 서로 식별 가능한, 복합 코드.
  22. 제 1 항 내지 제 21 항 중 어느 한 항에 있어서,
    상기 마크의 색은, 상기 마크가 배치되는 상기 소정 영역과 동일 색을 포함하는, 복합 코드.
  23. 제 1 항 내지 제 22 항 중 어느 한 항에 있어서,
    상기 마크의 배치 위치는 적어도 상기 특정 셀의 상기 소정 영역을 제외한 영역을 임의의 형상으로 구획한 영역 중 어느 하나로 설정되는, 복합 코드.
  24. 제 23 항에 있어서,
    상기 마크의 형상은, 상기 구획한 영역과 동일 형상이며, 상기 구획한 영역 내는 동일 색을 가지는, 복합 코드.
  25. 제 1 항 내지 제 24 항 중 어느 한 항에 있어서,
    상기 마크는 상기 마크가 배치되는 상기 소정 위치 또는 상기 소정 위치를 포함하는 영역에, 상기 소정 영역이 가진 색과 서로 식별 가능한 2 이상의 색 중 어느 하나를 가지는, 복합 코드.
  26. 제 1 항 내지 제 25 항 중 어느 한 항에 있어서,
    상기 제 2 코드는, 상기 마크의 형상, 크기, 색, 방향, 배치 패턴 중 적어도 어느 하나에 의해, 데이터가 정의되는, 복합 코드.
  27. 제 26 항에 있어서,
    상기 마크의 형상은 임의의 형상인, 복합 코드.
  28. 제 1 항 내지 제 27 항 중 어느 한 항에 있어서,
    상기 마크의 색은, 상기 마크끼리 식별 가능한 적어도 적, 녹, 청, 시안, 마젠다, 황, 흑, 백 및 상기 소정 영역의 색 중 어느 하나를 포함하는, 복합 코드.
  29. 제 1 항 내지 제 28 항 중 어느 한 항에 있어서,
    상기 마크의 크기는 소정 거리에서 시각적으로 인식하기 어려운 크기의 마크인, 복합 코드.
  30. 제 1 항 내지 제 29 항 중 어느 한 항에 있어서,
    상기 복합 코드는, 매체에 형성되거나, 전자매체, 방송매체, 기억매체 또는 통신매체로부터의 출력에 의해 표시장치에 표시되거나, 또는 전자매체 내에 디지털 정보로 형성되는, 복합 코드.
  31. 제 30 항에 있어서,
    적어도 상기 제 2 코드가 복수의 코드로 형성되고,
    상기 복수의 코드는, 시계열 데이터로서 표시 장치에 시간축 방향으로 소정 순서로 표시되거나, 또는 상기 매체의 소정 위치에 형성되는, 복합 코드.
  32. 제 31 항에 있어서,
    상기 시간축 방향으로 소정 순서로 표시되는 복수의 코드 사이에는, 비표시의 소정 시간을 포함하는, 복합 코드.
  33. 복수의 셀이 배열 형상으로 배치되고, 상기 복수의 셀의 각각의 셀이 소정 영역을 가지며, 상기 소정 영역에 서로 식별 가능한 2 이상의 색 중 어느 하나를 가짐으로써, 데이터가 정의되는 제 1 코드와,
    상기 복수의 셀의 적어도 일부를 형성하는 특정 셀 내에 있어서, 상기 소정 영역을 제외한 영역의 소정 위치에 배치되는 식별 가능한 마크에 의해 데이터가 정의되는 제 2 코드를 구비하는 복합 코드로,
    상기 제 1 코드 및 상기 제 2 코드 중 적어도 일방에 설치되는 특정 영역에는, 상기 제 1 코드 및 상기 제 2 코드 중 적어도 일방의 코드 중 상기 특정 영역을 제외한 영역의 적어도 일부에 대응하는 특정 정보를 포함하는 복합 코드.
  34. 제 33 항에 있어서,
    제 1 항 내지 제 32 항 중 어느 한 항에 기재된 상기 마크 중 적어도 하나가 형성되어 있는, 복합 코드.
  35. 제 33 항 또는 제 34 항에 있어서,
    상기 특정 영역을 제외한 영역의 적어도 일부에는, 개인을 특정하는 정보를 포함하는, 복합 코드.
  36. 제 33 항 내지 제 35 항 중 어느 한 항에 있어서,
    상기 특정 정보는 상기 특정 영역을 제외한 적어도 일부를 부호화 수단에 의해 부호화한 부호화 정보인, 복합 코드.
  37. 제 36 항에 있어서,
    상기 특정 정보는, 상기 부호화 정보가 암호화 수단을 통해 암호화된 암호화 정보인, 복합 코드.
  38. 제 37 항에 있어서,
    상기 암호화 정보는 복호화 수단에 의해 상기 부호화 정보로 복호할 수 있는, 복합 코드.
  39. 제 38 항에 있어서,
    상기 특정 영역을 제외한 적어도 일부에는, 정보처리장치에 상기 복호화 수단으로 실행시키기 위한 프로그램이 포함되는, 복합 코드.
  40. 제 38 항 또는 제 39 항에 있어서,
    상기 암호화 정보는, 상기 암호화 수단에서 비밀 키를 이용하여 부호화 정보를 암호화한 정보이며,
    상기 복호화 수단은 공개 키를 이용하여 상기 암호화 정보를 복호화하는, 복합 코드.
  41. 제 38 항 내지 제 40 항 중 어느 한 항에 있어서,
    상기 부호화 수단은 해시 함수이고,
    상기 해시 함수에 의해 부호화된 부호화 정보는 해시 값이고,
    상기 암호화 수단에 의해 암호화된 암호화 정보는 암호화된 해시 값이고,
    상기 암호화된 해시 값은 상기 복호화 수단에 의해 상기 해시 값으로 복호할 수 있는, 복합 코드.
  42. 제 36 항 내지 제 41 항 중 어느 한 항에 있어서,
    상기 특정 정보는, 상기 적어도 일방의 코드 중 상기 특정 영역을 제외한 적어도 일부가 나타내는 정보 또는 상기 부호화 정보를 기초로 전자서명수단에 의해 작성된 전자서명정보이며, 상기 전자서명정보는 검증수단에 의해 상기 적어도 일방의 코드 중 상기 특정 영역을 제외한 적어도 일부가 나타내는 정보와 소정의 관계에 있는 것을 검증 가능한, 복합 코드.
  43. 제 1 항 내지 제 42 항 중 어느 한 항에 있어서,
    상기 복합 코드를 명시하기 위한 마크, 그래픽스 또는 텍스트 중 적어도 어느 하나가, 상기 제 1 코드의 내부에 형성된, 복합 코드.
  44. 제 33 항 내지 제 42 항 중 어느 한 항에 기재된 복합 코드가 형성 또는 표시된 매체.
  45. 제 44 항에 있어서,
    제 33 항 내지 제 42 항 중 어느 한 항에 기재된 특정 영역을 제외한 적어도 일부는, 상기 매체상에 형성된 문자 및 화상의 적어도 하나에 대응하는 정보를 데이터화한 것이고, 상기 정보의 근방 또는 내부에 상기 복합 코드가 형성된, 매체.
  46. 제 1 항 내지 제 43 항 중 어느 한 항에 기재된 복합 코드에 포함되는,
    상기 제 1 코드를 취득하는 제 1 취득 수단과
    상기 제 2 코드를 취득하는 제 2 취득 수단을 구비하는, 복합 코드 판독 장치.
  47. 제 46 항에 있어서,
    제 6 항 내지 제 18 항 중 어느 한 항에 기재된 상기 소정 영역에 포함된 기준점을 기초로,
    상기 제 2 코드가 취득되는, 복합 코드 판독 장치.
  48. 제 47 항에 있어서,
    상기 제 1 취득 수단으로 취득한 상기 셀의 기준점을,
    상기 제 2 취득 수단으로 취득한 상기 기준점의 좌표치를 바탕으로 보정하고,
    상기 제 2 코드를 판독하는, 복합 코드 판독 장치.
  49. 제 47 항 또는 제 48 항에 있어서,
    제 10 항 내지 제 12 항 중 어느 한 항에 기재된 상기 기준 패턴을 사용하여,
    상기 마크의 배치 후보 위치를 보정하여
    상기 제 2 코드를 판독하는, 복합 코드 판독 장치.
  50. 제 46 항 내지 제 49 항 중 어느 한 항에 있어서,
    상기 제 1 코드 및 상기 제 2 코드의 적어도 일방에는, 개인을 특정하는 정보를 포함하고,
    상기 개인을 특정하는 정보는 적어도 이름, 성별, 생년월일, 주소, 호적, 생체정보 중 하나에 관한 정보인, 복합 코드 판독 장치.
  51. 제 50 항에 있어서,
    생체정보를 취득하는 제 3 취득수단과
    상기 제 3 취득 수단으로 취득한 생체정보와
    상기 개인을 특정하는 정보와 대조하여, 그 정부(正否)를 출력하는 출력 수단을 구비하는 복합 코드 판독 장치.
  52. 제 51 항에 있어서,
    상기 제 1 취득 수단, 상기 제 2 취득 수단, 상기 제 3 취득 수단 및 상기 출력 수단의 적어도 하나는, 1 또는 복수의 프로세서의 처리에 의해서 기능하는, 복합 코드 판독 장치.
  53. 제 46 항 내지 제 52 항 중 어느 한 항에 있어서,
    제 36 항에 기재된 부호화 수단과 동일한 부호화가 가능한 제 2 부호화 수단을 구비하고,
    제 33 항 내지 제 42 항 중 어느 한 항에 기재된 특정 영역을 제외한 적어도 일부를, 상기 제 2 부호화 수단에 의해 제 2 부호화 정보로 부호화하는, 복합 코드 판독 장치.
  54. 제 46 항 내지 제 53 항 중 어느 한 항에 있어서,
    복호화 수단을 구비하고,
    제 37 항에 기재된 암호화 수단에 의해 암호화된 암호화 정보를, 상기 복호화 수단에 의해, 제 36 항에 기재된 부호화 정보로 복호하는, 복합 코드 판독 장치.
  55. 제 54 항에 있어서,
    공개 키를 가지고,
    상기 암호화 정보는 상기 암호화 수단으로 비밀 키를 이용하여 부호화 정보를 암호화한 정보이며,
    상기 복호화 수단은 상기 공개 키를 이용하여 상기 암호화 정보를 복호화하는, 복합 코드 판독 장치.
  56. 제 54 항 또는 제 55 항에 있어서,
    제 53 항에 기재된 제 2 부호화 수단으로 부호화한 제 2 부호화 정보와,
    상기 복호화 수단으로 복호한 부호화 정보를 대조하여 제 33 항에 기재된 특정 정보의 정부(正否)를 판정하는, 복합 코드 판독 장치.
  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 항 중 어느 한 항에 기재된 복합 코드를 생성하는 복합 코드 생성장치.
KR1020207022146A 2017-12-29 2019-01-04 복합 코드 패턴, 생성 장치, 판독 장치, 방법 및 프로그램 KR20200106510A (ko)

Applications Claiming Priority (11)

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

Publications (1)

Publication Number Publication Date
KR20200106510A true KR20200106510A (ko) 2020-09-14

Family

ID=65516908

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207022146A KR20200106510A (ko) 2017-12-29 2019-01-04 복합 코드 패턴, 생성 장치, 판독 장치, 방법 및 프로그램

Country Status (7)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102562146B1 (ko) * 2022-12-29 2023-08-01 보이스아이 주식회사 컬러코드를 이용하여 입장권한과 신분을 증명하는 방법

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 株式会社バンダイ 識別コード付き玩具
US20220255755A1 (en) * 2019-08-28 2022-08-11 Sony Semiconductor Solutions Corporation Information processing device, information processing method, and program
JP6931935B2 (ja) * 2019-10-11 2021-09-08 株式会社テララコード研究所 二次元シンボル、及び二次元シンボルの読取方法
CA3102514C (en) * 2020-01-24 2023-09-26 Jostens, Inc. System for managing exploration and consumption of digital content in connection with a physical article
JP7380437B2 (ja) * 2020-06-11 2023-11-15 株式会社デンソー 情報コード、情報コード印刷媒体、情報コード生成装置、情報コード生成プログラム、情報コード生成方法、情報コード読取装置、情報コード読取プログラム、及び情報コード読取方法
KR102443688B1 (ko) * 2020-07-06 2022-09-14 이종찬 매장의 고객 관리 시스템 및 방법
JP2022540973A (ja) * 2020-08-20 2022-09-21 ネオソン インコーポレイテッド バーコードおよびピアレビューの使用によるサプライチェーンのトラッキングおよびトレーシングの方法およびシステム
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
KR102471729B1 (ko) * 2021-05-31 2022-11-28 주식회사 이노파트너즈 로고이미지가 삽입된 큐알코드 및 이의 제작방법
KR102485940B1 (ko) * 2021-05-31 2023-01-10 주식회사 이노파트너즈 이미지가 삽입된 큐알코드 및 이의 제작방법
CN113379351B (zh) * 2021-06-22 2022-10-21 沙师弟(重庆)网络科技有限公司 一种基于区块链的运输订单信息存储方法
CN113988244B (zh) * 2021-10-19 2024-05-10 艾斯芸防伪科技(福建)有限公司 一种防伪点阵生成与校验方法、系统、设备及介质
WO2023166636A1 (ja) * 2022-03-02 2023-09-07 日本電信電話株式会社 音声再生装置、音声再生方法および音声再生プログラム
CN116700637B (zh) * 2023-05-17 2024-04-19 国能龙源催化剂江苏有限公司 催化剂产品二维码打印方法、装置和电子设备
JP7493859B1 (ja) 2023-12-13 2024-06-03 株式会社フォリオ 二次元コード配布システム及び二次元コード配布方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2938338B2 (ja) 1994-03-14 1999-08-23 株式会社デンソー 二次元コード
JP6061075B2 (ja) 2012-10-23 2017-01-18 株式会社テララコード研究所 二次元コード、二次元コードの生成方法、及び二次元コードの読取方法

Family Cites Families (39)

* 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 個人識別装置
WO1994008314A1 (en) 1992-09-28 1994-04-14 Olympus Optical Co., Ltd. Dot code and information recording/reproducing system for recording/reproducing dot code
JP2833975B2 (ja) * 1992-09-28 1998-12-09 オリンパス光学工業株式会社 ドットコード
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カード読取装置
JP2000030016A (ja) * 1999-04-30 2000-01-28 Olympus Optical Co Ltd 情報記録媒体及び情報再生システム
JP2001052142A (ja) 1999-08-06 2001-02-23 Toshiba Corp Idカード、idカード発行装置ならびにidカード認証装置
US6398117B1 (en) * 2000-01-14 2002-06-04 Hewlett-Packard Co. Method and system for combining bar codes of different encoding dimensions
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 証明書確認方法、証明書確認プログラム及び証明書
JP4585202B2 (ja) * 2004-02-03 2010-11-24 アライ株式会社 2次元コード,2次元コードの形成装置及び形成方法並びに2次元コードの読取装置及び読取方法
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 日本電気株式会社 携帯通信端末
AU2007254619B2 (en) * 2007-12-21 2010-10-07 Canon Kabushiki Kaisha Barcode removal
JP2010067127A (ja) * 2008-09-12 2010-03-25 Canon Inc 情報処理装置、情報処理装置の制御方法、記憶媒体、及びプログラム
JP5343761B2 (ja) 2009-08-25 2013-11-13 株式会社デンソーウェーブ 光学的情報読取装置、及び光学的情報読取装置を用いた認証システム
KR101701170B1 (ko) * 2009-09-30 2017-02-01 시프트 코. 엘티디. 2차원 코드, 2차원 코드 리더 및 프로그램
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 大日本印刷株式会社 電子透かしコードを付与した情報記録体
US9594993B2 (en) 2013-11-07 2017-03-14 Scantrush Sa Two dimensional barcode and method of authentication of such barcode
JP6375957B2 (ja) 2015-01-16 2018-08-22 株式会社デンソー 充電管理システムおよび読取端末
JP6231233B1 (ja) * 2017-02-23 2017-11-15 株式会社マイクロ・テクニカ コードの画像データを生成する方法、およびコードの真贋判定方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2938338B2 (ja) 1994-03-14 1999-08-23 株式会社デンソー 二次元コード
JP6061075B2 (ja) 2012-10-23 2017-01-18 株式会社テララコード研究所 二次元コード、二次元コードの生成方法、及び二次元コードの読取方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102562146B1 (ko) * 2022-12-29 2023-08-01 보이스아이 주식회사 컬러코드를 이용하여 입장권한과 신분을 증명하는 방법

Also Published As

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

Similar Documents

Publication Publication Date Title
JP6746158B2 (ja) 2次元コード
JP6403085B1 (ja) 複合コードパターン、生成装置、読み取り装置、方法およびプログラム
US9406010B2 (en) Producing, capturing and using visual identification tags for moving objects
JP4764920B2 (ja) カメラ内装式モバイルデバイスのビジュアルコードシステムおよびその応用例
ES2341607T3 (es) Metodo y dispositivo de codificacion y descodificacion.
KR101710050B1 (ko) 이미지 식별 시스템 및 방법
USRE44982E1 (en) Mixed code, and method and apparatus for generating the same
US7296747B2 (en) Visual code system for camera-equipped mobile devices and applications thereof
CA2843680C (en) Method, apparatus and system for electronically establishing ownership of a physical media carrier
CN105190659A (zh) 用于智能电话支付和交易的方法和布置
CN102034127A (zh) 新型大容量二维条码与系统及其编解码方法和应用
JP2018501588A (ja) 四次元コード及び、四次元コードに基づく画像識別システム及び画像識別方法、四次元コード検索システム及び四次元コード検索方法
US10621482B2 (en) Graphic two-dimensional barcode and creating method thereof
CN101354717B (zh) 原稿提取方法和原稿提取装置
Mishra Region Identification and Decoding Of Security Markers Using Image Processing Tools
JP2013097393A (ja) 手書き文字テキスト化システム
Kato 2D-barcode for Mobile Devices

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right