KR100570242B1 - 2차원 코드 판독 방법, 2차원 코드 판독 프로그램을기록한 기록 매체, 2차원 코드 판독 장치, 디지털 카메라및 디지털 카메라를 구비한 휴대용 단말기 - Google Patents

2차원 코드 판독 방법, 2차원 코드 판독 프로그램을기록한 기록 매체, 2차원 코드 판독 장치, 디지털 카메라및 디지털 카메라를 구비한 휴대용 단말기 Download PDF

Info

Publication number
KR100570242B1
KR100570242B1 KR1020030048585A KR20030048585A KR100570242B1 KR 100570242 B1 KR100570242 B1 KR 100570242B1 KR 1020030048585 A KR1020030048585 A KR 1020030048585A KR 20030048585 A KR20030048585 A KR 20030048585A KR 100570242 B1 KR100570242 B1 KR 100570242B1
Authority
KR
South Korea
Prior art keywords
dimensional code
image
cell
center position
determined
Prior art date
Application number
KR1020030048585A
Other languages
English (en)
Other versions
KR20040010218A (ko
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
Application filed by 샤프 가부시키가이샤 filed Critical 샤프 가부시키가이샤
Publication of KR20040010218A publication Critical patent/KR20040010218A/ko
Application granted granted Critical
Publication of KR100570242B1 publication Critical patent/KR100570242B1/ko

Links

Images

Classifications

    • 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/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1443Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in 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
    • 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/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1456Methods for optical code recognition including a method step for retrieval of the optical code determining the orientation of the optical code with respect to the reader and correcting therefore
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2101/00Still video cameras

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Electromagnetism (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Cash Registers Or Receiving Machines (AREA)

Abstract

3개의 위치 검출 소자 패턴과 인덱스 패턴을 포함하는 4개 점의 좌표 위치를 캡쳐한 2차원 코드 화상으로부터 검출하고(단계 S11), 2차원 코드 크기를 결정하며(단계 S12), 깊이 정보를 추가함으로써 화상 경사에 대하여 보상된 각 셀의 중심 위치에 대응하는 좌표 위치를 결정하는 수학식의 계수를 결정하고(단계 S13), 결정된 계수를 적용함으로써 계산식에 따라 각 셀 중심 위치의 좌표 위치를 결정하며(단계 S14), 각 셀 중심 위치에 대응하는 화상 데이터로부터 밝음/어두움을 판별하고 각 셀용 이진 데이터(0 또는 1)를 생성하며(단계 S15), 이진 데이터에 기초하여 2차원 코드 정보를 재생한다(단계 S16). 수학식은 점화식(recurrence formula)으로 표현된다. 2차원 코드의 4개 점의 좌표 위치로부터 결정된 계수는 동일한 상수에 의해 나누어져 정수로 된다.
중심 위치, 점화식, 2차원 코드 판독 방법, 디지털 카메라

Description

2차원 코드 판독 방법, 2차원 코드 판독 프로그램을 기록한 기록 매체, 2차원 코드 판독 장치, 디지털 카메라 및 디지털 카메라를 구비한 휴대용 단말기{TWO-DIMENSIONAL CODE READING METHOD, RECORDING MEDIUM WITH TWO-DIMENSIONAL CODE READING PROGRAM, TWO-DIMENSIONAL CODE READING DEVICE, DIGITAL CAMERA AND PORTABLE TERMINAL WITH DIGITAL CAMERA}
도 1은 널리 이용되는 대표적인 코드 종류의 개략적인 도면.
도 2는 QR 모드의 개요를 설명하는 도면.
도 3은 종래의 판독 방법에 따라 QR 코드를 판독하는 기본 동작을 나타내는 흐름도.
도 4는 본 발명의 일실시예에 따라 2차원 코드 판독 장치의 구성을 도시하는 블록도.
도 5는 본 발명의 다른 일실시예에 따라 2차원 코드 판독 장치의 구성을 도시하는 블록도.
도 6은 디지털 카메라에 의한 2차원 코드의 인쇄 화상 및 2차원 코드 화상 인쇄물로부터의 소정의 거리로 설정된 휴대 전화에 내장된 디지털 카메라를 도시하는 도면.
도 7은 본 발명의 제1 실시예에 따른 2차원 코드 판독 방법의 처리 단계를 나타내는 흐름도.
도 8은 각 셀의 중심 위치의 좌표 위치(화상 좌표 위치)를 결정하는 단계를 나타내는 흐름도.
본 발명은, 2차원 코드 판독 방법, 2차원 코드 판독 프로그램, 2차원 코드 판독 프로그램을 기록한 기록 매체, 2차원 코드 판독 장치, 디지털 카메라 및 디지털 카메라를 구비한 휴대용 단말기에 관한 것이다. 특히, 본 발명은, 피사체와의 접촉없이 비스듬하게 촬상된 2차원 코드 화상을 정확하고도 신속하게 판독할 수 있는 2차원 코드 판독 방법, 이 방법을 위한 2차원 코드 판독 프로그램, 2차원 코드 판독 프로그램을 기록한 기록 매체, 및 그 방법과 프로그램에 따른 2차원 코드를 판독하는 2차원 코드 판독 장치에 관한 것이다.
도 1은 제조물 등의 태그 정보를 컴퓨터에 의해 판독가능한 형태로 인코딩하는데 사용되어온 대표적인 코드 종류를 도시한다. 1차원인 수평(또는 수직) 방향으로만 정보를 포함하는 바코드(도 1의 "a")와 비교해 보면, 2차원인 수직 및 수평 방향에서의 정보를 포함하는 2차원 코드는 보다 많은 양의 정보를 유지할 수 있지만 더 긴 판독 시간을 필요로 한다.
2차원 코드를 위한 몇가지 방법이 있으며, 2차원 코드는 기본적으로 2개의 그룹으로 분류될 수 있다. 즉, 도 1에 도시한 바와 같이 스택형 2차원 코드(b) 및 매트릭스형 2차원 코드(c)이다. 스택형 2차원 코드는, 이진 코드화 데이터를 유지하는 다수의 바코드로 구성되며 각 바코드의 바의 배열 방향에 수직하는 방향으로 다층(행)으로 적층된다. 행들은 각 행에 대하여 제공되는 시작 코드 및 정지 코드에 의해 서로 구별된다.
매트릭스형 2차원 코드는, 이진 코드화 데이터가 2개 방향(수직 및 수평 방향)으로 배열된 셀로 변환된 것이다. 매트릭스 코드의 표시 영역은 어둡고(블랙) 밝은(화이트) 셀 패턴(전체적으로 사각형임)에 의해 표시된다. 블랙-화이트 셀 패턴의 각도 및 크기를 판독하여 디코딩한다.
2차원 코드를 정확하게 디코딩하기 위해, 각 바코드 또는 각 셀의 밝음/어두움을 정확하게 구별할 필요가 있다. 따라서, 판독할 데이터의 위치를 나타내는, 각 바코드 또는 각 셀의 중심 위치를 결정하는 것이 중요하다.
기호(즉, 2차원 코드)의 방향을 구별하기 위해 L형 가이드 셀 및 절단 기호가 제공되며, 이것은 360° 모든 방향에서 2차원 코드의 고속 판독을 가능하게 한다.
대표적인 스택형 2차원 코드는 CODE49, CODE16K, PDF417 등이며, 매트릭스형 2차원 코드는 DATA CODE, QR CODE, MAXI CODE, Veri CODE, CODEI, Array Tag, CP CODE, Carla CODE 등이다.
매트릭스형 2차원 코드의 일예로는 도 2에 도시한 바와 같은 QR 코드가 있고, 이 코드는 JIS 표준 X0510에 의해 규정된다. 도 2는 QR 코드의 개요를 설명하기 위한 도면이다. 도 2에 도시한 바와 같이, QR 코드의 모델 2는 QR 코드 위치를 검출하기 위해 3개의 코너에 배치된 특정 위치 검출 소자 패턴 A, B, C를 갖는다. 또한, QR 코드는 각 셀의 위치를 인덱스하기 위한 영역에 배치된 인덱스 패턴 D0, D1,...Dmax(max는 QR 코드를 구성하는 셀 수에 의존하는 모델 번호임)을 포함한다. 각 셀 위치를 가이드하기 위한 타이밍 패턴(E, F)도 QR 코드 영역의 (수평 방향에서) 상측 및 (수직 방향에서) 좌측을 따라 배치된다.
QR 코드와 같은 2차원 매트릭스 코드의 경우, 수평 및 수직 검사 라인을 설정하여 이 라인들이 코드 영역의 각 측면상에 배열된 타이밍 패턴(E, F)의 중심 위치를 통해 2쌍의 대향면(수직 및 수평 면)을 연결시킬 수 있다. 바코드의 스택으로 구성된 2차원 스택형 코드의 경우, 한 쌍의 대향면을 각 바코드의 바의 배열 방향으로 연결함으로써 각 바코드에 대하여 하나의 검사 라인을 설정한다. 2차원 매트릭스 코드에서는, 각 셀은 상기한 방식 및 정보로 설정된 각 검사 라인의 교차점에서 발견되며, 2차원 스택 코드에서는, 각 셀은 바코드 층의 축과 검사 라인의 축이 서로 교차하는 교차점에서 발견되어, 2차원 코드를 판독하기 하도록 그 셀에 포함된 정보를 판독하고 디코딩한다.
도 3은 도 2에 도시한 QR 코드를 판독하는 기본 프로시저를 도시하는 흐름도이다. 도 3의 흐름도에서, 3개의 위치 검출 소자 패턴(A, B, C)은 위치 검출 패턴의 특정한 특징을 검출함으로써 발견되고(단계 S1), 이후, 기호 모델 번호, 즉, 데이터를 기록하기 위한 셀 수(2차원 코드의 크기)가 검출되며(단계 S2), QR 코드를 구성하는 각 셀의 중심 위치가 계산에 의해 결정되고(단계 S3), 화이트(어두움) 및 블랙(밝음)이 각 셀 위치에 대응하는 화상 데이터로부터 구별되고 이진 코드화 데 이터("0" 또는 "1")가 생성되며(단계 S4), 마지막으로 각 셀 위치의 이진 코드화 데이터에 기초하여 QR 코드의 디코딩이 수행된다(단계 S5). 일반적으로, 단계 S3에서의 셀 중심 위치 계산 및 단계 S4에서의 이진 코드화 데이터 생성은 각 셀에 대하여 수행되며, 상기한 순차적 단계들이 (수직 및 수평 방향에서의 이중 루프로서) 반복된다.
QR 코드의 좌표 위치(화상 좌표 위치)를 검출하기 위해(단계 S1), 인덱스 패턴(Di(i=0, 1,...,max)) 및 타이밍 패턴(E, F)과 같은 추가 정보를 사용할 수도 있다. 또한, QR 코드는 인덱스 패턴(Di(i=0, 1,...,max)) 및 타이밍 패턴(E, F)에 기초하여 복수의 영역으로 분할되어 인덱스 정밀도를 개선한다. 그 대안으로서, 위치 검출 소자 패턴(A, B, C) 간에 밝은(화이트) 셀와 어두운(블랙) 셀이 교대로 배열된 타이밍 패턴(E, F)을 먼저 검출하고, 화상 처리 방법에 의해 위치 검출 소자 패턴(A, B, C) 및 타이밍 패턴(E, F)에 대한 그 셀의 중심 위치 좌표를 검색하고, 이후 검출된 좌표를 이용하여 다른 셀의 중심 위치를 결정할 수도 있다.
그러나, 2차원 코드 화상이 언제나 왜곡없이 검출될 수 없다는 점에 주목해야 한다. 예를 들어, 비스듬히 판독된 2차원 코드 화상은 흔히 왜곡될 수 있다. 특히, 기록 매체(대부분의 경우에 있어서 종이)로부터 소정의 거리를 두고 2차원 코드를 디지털 카메라 및 디지털 카메라가 내장된 휴대 전화와 같은 비접촉형 장치에 의해 판독하는 경우, 그 2차원 코드 화상은 대개는 왜곡된다.
이 경우, 위치 검출 소자 패턴(A, B, C), 인덱스 패턴(Di), 및 타이밍 패턴(E, F) 근처에 배치된 데이터 셀에 대한 셀 종별(즉, 이 셀에 기록된 정보)이, 계산에 의해 결정되는 판독 위치와 실제 셀 위치 사이의 작은 차이로 인하여 정확하게 판독될 수 있다. 그러나, 실제 셀 위치로부터 판독하는 계산된 셀 위치의 편차는 그 셀이 위치 검출 소자 패턴(A, B, C), 인덱스 패턴(Di), 및 타이밍 패턴(E, F)으로부터 더 멀어짐에 따라 증가할 수 있기 때문에, 상기한 패턴으로부터 떨어져 있는 그 셀 종별을 정확하게 구별하기 어렵다.
비스듬히 판독되고 왜곡된 2차원 코드를 정확하게 판독하는 방법이 일본 특허공보 제2742555호에 개시되어 있다.
이 방법은, 비스듬한 각도로 판독되는 2차원 코드의 왜곡이 어느 정도 비례한다는 사실에 기초하여, 셀 중심 위치를 결정하기 위해 검사 라인 설정을 이용하는 것이다.
다시 말하면, 비스듬한 각도로 판독되는 2차원 코드 영역의 4개 정점은, 2차원 코드 영역을 형성하는 4개의 변에서 2개의 이웃하는 변의 경사를 표시하는 경사 각 및 패턴 특징에 의해 우선 결정된다. 한 변 상의 각 셀의 중심 위치를 통과하는 각 검사 라인의 위치에 기초하여, 각 검사 라인과 각 변 사이에 형성된 경사각을 그 변의 경사를 나타내는 경사각으로부터의 비례 분포에 의해 결정한다. 비례 분포 경사 각을 갖는 각 검사 라인의 교차점을 결정함으로써 각 셀의 중심 위치를 식별한다. 이후, 그 셀 종류를 판독한다. 각 검사 라인의 경사각을 계산하기 위해, 많은 계산량을 특징으로 하는 역 삼각법 함수를 이용할 필요가 있다. 따라서, 2차원 코드의 셀의 중심 위치를 식별하고 2차원 코드를 해석하려면 많은 시간이 필 요하다. 마찬가지로, 이 방법을 스택형 2차원 코드의 바코드의 중심 위치를 식별하는데 응용하려면 역 삼각법 함수를 이용하는 많은 계산이 또한 필요하게 되며, 이에 따라 2차원 코드를 완전히 해석하는데 많은 시간을 소비하게 된다.
일본 특개평 제2000-222517호는 검사 라인 설정을 처리하는 점에 특징을 갖는 다른 방법을 개시하고 있다. 이 공보에 따르면, 2차원 코드 영역을 소정의 조건을 만족시키는 사다리꼴로서 고려하고 셀 위치를 결정하기 위한 검사 라인이 사다리꼴의 대향 변의 각 쌍 상에 존재하는 점들을 분할하는 각 쌍을 연결함으로 설정되는 방법을 개시하고 있다. 이 방법은 검사 라인 설정을 위해 매번 경사각을 계산할 필요성을 제거함으로써 검사 라인의 설정 처리를 촉진시키는 것이다. 즉, 화상의 2차원 코드 영역을 소정의 조건을 만족시키는 사다리꼴로서 고려할 수 있다면, 한 변에 대한 분할점의 설정 위치를 2개의 인접하는 변의 길이 비율에 기초한 비례 분포에 의해 설정할 수 있다.
상기한 종래의 방법은 각 셀의 중심 위치를 결정하기 위해 검사 라인을 설정하는 방식을 발명함으로써 2차원 코드의 보다 정확한 판독 또는 보다 짧은 시간의 2차원 코드 해석을 구현하려는 것이다.
일본 특허공보 제2742555호의 방법은 각 셀의 중심 위치를 정확하게 계한하는 방식을 고려할 뿐이며 2차원 코드를 해석하는데 얼마나 많은 시간이 걸리는지는 고려하지 않는다. 일본 특허공보 제2742555호에 의해 2차원 코드의 각 셀의 중심 위치를 결정하는 경우, 각 검사 라인의 경사각, 즉, 타이밍 셀의 중심 위치에서 각 데이터 셀의 경사각을 결정할 때마다 역 삼각법 함수를 수행할 필요가 있다. 이것 은, 각 검사 라인의 경사를 계산하는데 필요한 시간이 2차원 코드의 셀 수에 비례하여 과도하게 증가할 수 있다는 것을 의미한다.
반면, 일본 특개평 제2000-222517호에 개시된 방법은, 정사각형으로 판독된 2차원 코드 화상을 소정의 조건을 만족시키는 사다리꼴로 근사화하는 것이며, 이에 따라 일본 특허공보 제2742555호의 방법과 비교할 때, 검사 라인을 설정하고 2차원 코드를 해석하는데 필요한 시간이 적다는 특징이 있지만 2개의 검사 라인의 교차점에 의해 각 셀의 중심 위치를 결정하는 정확성이 떨어진다.
본 발명의 주된 목적은, 디지털 카메라에 의해 비스듬히 캡쳐된 2차원 코드 화상을 경사 정보를 이용하여 화상 경사에 대하여 보상된 정면에서 캡쳐된 2차원 코드 화상 정보로 변환함으로써 2차원 코드의 정확한 값을 얻고 동시에 각 데이터 셀의 중심 위치를 결정하는 상당한 시간 단축을 달성하는 것으로서, 즉, 화상 변환을 수행하는 계산식을 나타내는 점화식을 이용하여 2차원 코드를 판독하기 위한 것이다.
본 발명의 다른 목적은, 2차원 코드 판독 방법을 제공하는 것으로서, 이 방법은, 이진 코드화 데이터를 나타내는 셀의 매트릭스를 형성하도록 수직 및 수평 방향으로 배열된 다수의 셀로 구성된 매트릭스형 2차원 코드 화상을 얻는 단계, 상기 화상의 2차원 코드 영역을 결정하는 단계, 상기 셀 각각의 중심 위치를 식별하는 검사 라인을 설정하는 단계 - 상기 검사 라인 각각은 결정된 2차원 코드 영역의 경계를 규정하는 4개 변중 대향하는 2개 쌍을 연결함 -, 및 검사 라인 설정 처리에 의해 설정된 상기 검사 라인에 기초하여 상기 2차원 코드 정보를 재생하는 단계를 포함하고, 여기서 2차원 코드에 대한 경사 정보를 추가함으로써 화상 경사에 대하여 보상된 상기 2차원 코드에서 상기 셀 각각의 중심 위치의 좌표 위치를 계산하는 화상 위치 계산식에서의 계수는, 상기 2차원 코드 영역 결정 단계에 의해 결정된 상기 2차원 코드 영역 내의 4개 점의 좌표 위치에 기초하여 상기 2차원 코드 상의 검사 라인을 설정하도록 계산된다.
본 발명의 또다른 목적은 상기한 바와 같은 2차원 코드 판독 방법을 제공하는 것으로서, 상기 2차원 코드 화상에서의 각 셀의 중심 위치의 좌표 위치를 결정하는 화상 위치 계산식 각각은 각 셀의 중심 위치에 대하여 점화식에 의해 표현되어, 상기 2차원 코드의 경사 정보를 추가함으로써 화상 경사에 대하여 보상된 각 셀의 중심 위치의 좌표 위치를 결정하기 위한 계산 양이 줄어든다.
본 발명의 또다른 목적은 상기한 바와 같은 2차원 코드 판독 방법을 제공하는 것으로서, 2차원 코드 영역의 4개 코너에서의 좌표 위치를 계산하기 위한 화상 위치 계산식에서의 계수는 소정의 동일한 상수로 나누어져 정수로 되며, 셀 중심 위치의 좌표 위치는 정수 계산에 의해서만 결정된다.
본 발명의 또다른 목적은 상기한 바와 같은 2차원 코드 판독 방법을 제공하는 것으로서, 화상 위치 계산식용으로 기호에 의해 결정되고 흔히 상수로부터 선택되고 화상 위치 계산식에서 일반적으로 사용되는 계수를 나누기 위한 상수가 사용되어, 상기 계수를 나누고 더 작은 크기의 계수로 변환하여 2차원 코드를 판독한다.
본 발명의 또다른 목적은, 2차원 코드 판독 방법을 제공하는 것으로서, 이 방법은, 데이터를 나타내는 바코드의 배열 방향에 수직하는 방향으로 다층 배열된 다수의 바코드로 구성된 스택형 2차원 코드 화상을 얻는 단계, 상기 화상에서의 2차원 코드 영역을 결정하는 단계, 각 바코드의 중심 위치를 식별하는 검사 라인을 설정하는 단계 - 상기 검사 라인은 결정된 2차원 코드 영역의 경계를 나타내는 4개 변의 대향하는 두 쌍중 한 쌍을 연결하고, 상기 쌍은 각 바코드의 배열 방향에서 서로 대향함 -; 및 검사 라인 설정 단계에서 설정된 검사 라인에 기초하여 상기 2차원 코드 정보를 재생하는 단계를 포함하고, 여기서, 2차원 코드에 대한 경사 정보를 추가함으로써 화상 경사에 대하여 보상된 상기 2차원 코드에서 상기 셀 각각의 중심 위치의 좌표 위치를 계산하는 화상 위치 계산식에서의 계수는, 상기 2차원 코드 영역 결정 단계에 의해 결정된 상기 2차원 코드 영역 내의 4개 점의 좌표 위치에 기초하여 상기 2차원 코드 상의 검사 라인을 설정하도록 계산된다.
본 발명의 또다른 목적은 컴퓨터에 의해 실행가능한 프로그램 코드로 상기한 2차원 코드 판독 방법을 설명하는 2차원 코드 판독 프로그램을 제공하는 것이다.
본 발명의 또다른 목적은 컴퓨터에 의해 판독가능하고 상기한 2차원 코드 판독 프로그램을 기억하는 프로그램 기록 매체를 제공하는 것이다.
본 발명의 또다른 목적은 2차원 코드 판독 장치를 제공하는 것으로서, 이 장치는 수직 및 수평 방향으로 배열되어 각 셀이 이진 코드화 데이터를 나타내는 셀의 매트릭스를 형성하는 다수의 셀로 구성된 매트릭스형 2차원 코드 화상을 캡쳐하는 화상 캡쳐부, 2차원 코드 화상에서의 2차원 코드 영역을 결정하는 2차원 코드 영역 결정부, 셀 각각의 중심 위치를 식별하는 검사 라인을 설정하는 검사 라인 설정부 - 상기 검사 라인 각각은 결정된 2차원 코드 영역의 경계를 규정하는 4개 변중 2개의 대향하는 쌍을 연결함-, 및 검사 라인에 기초하여 2차원 코드 정보를 재생하는 디코딩부를 포함하고, 여기서, 2차원 코드 영역 결정부에 의해 결정된 2차원 코드 영역 내의 4개 점의 좌표 위치에 기초하여 상기 검사 라인 설정부는, 2차원 코드에 대한 경사 정보를 추가함으로써 화상 경사에 대하여 보상된 2차원 코드에서 각 셀의 중심 위치의 좌표 위치를 결정하기 위한 화상 위치 계산식용 계수를 계산한다.
본 발명의 또다른 목적은 상기한 2차원 코드 판독 장치를 제공하는 것으로서, 여기서, 상기 2차원 코드 화상에서의 각 셀의 중심 위치의 좌표 위치를 결정하는 화상 위치 계산식 각각은 각 셀의 중심 위치에 대하여 점화식에 의해 표현되어, 상기 2차원 코드의 경사 정보를 추가함으로써 화상 경사에 대하여 보상된 각 셀의 중심 위치의 좌표 위치를 결정하기 위한 계산 양이 줄어든다.
본 발명의 또다른 목적은 상기한 2차원 코드 판독 장치를 제공하는 것으로서, 여기서, 2차원 코드 영역의 4개 코너에서의 좌표 위치를 계산하기 위한 화상 위치 계산식에서의 계수는 소정의 동일한 상수로 나누어져 정수로 되며, 셀 중심 위치의 좌표 위치는 정수 계산에 의해서만 결정된다.
본 발명의 또다른 목적은 상기한 2차원 코드 판독 장치를 제공하는 것으로서, 이 때 화상 위치 계산식용으로 기호에 의해 결정되고 흔히 상수로부터 선택되고 화상 위치 계산식에서 일반적으로 사용되는 계수를 나누기 위한 상수가 사용되 어, 상기 계수를 나누고 더 작은 크기의 계수로 변환하여 2차원 코드를 판독한다.
본 발명의 또다른 목적은 2차원 코드 판독 장치를 내장하는 디지털 카메라를 제공하는 것이다.
본 발명의 또다른 목적은 휴대 전화에, 2차원 코드 판독 장치를 내장하는 디지털 카메라를 제공하는 것이다.
<실시예>
첨부 도면을 참조하여 본 발명의 일실시예에 따른 2차원 코드 판독 방법을 상세히 설명한다. 다음의 실시예는 2차원 코드의 일예로서 QR 코드를 판독하는 경우에 대하여 설명한 것이다. 그러나, 본 발명은, 본 실시예에 한정되지 않으며, 본 발명의 범위 내에서, 바코드의 배열 방향에 수직한 방향으로 적층된 데이터를 나타내는 다수의 바코드로 구성된 스택형 2차원 코드 뿐만 아니라 각 셀이 이진 코드화 데이터를 나타내며 QR 코드처럼 수평 및 수직 방향으로 배열된 다수의 셀로 구성된 매트릭스형 2차원 코드에도 당연히 적용될 수 있다.
본 발명의 실시예의 설명에 있어서, QR 코드는, 밝은(화이트) 또는 어두운(블랙) 정사각형 형태로 이진 데이터를 기록하기 위한 셀이라 불리는 "m x m" 단위 정사각형들로 구성된다. 예를 들어, 도 2에 도시한 위치 검출 소자 패턴(A, B, C) 각각은 한 변당 7개의 셀을 갖는 하나의 블랙 정사각형, 한 변당 5개의 셀을 갖는 하나의 화이트 정사각형, 및 한 변당 3개의 셀을 갖는 하나의 블랙 정사각형으로 구성되며, 이들 정사각형은 하나의 정사각형이 다른 정사각형의 위에 위치하도록 같은 축 상에서 서로 중첩되어 있다. QR 코드 화상은 디지털 카메라에 의해 캡쳐되어 2차원 코드 판독 장치(이후에 설명함)에 입력되며 이 장치에서 입력 화상은 밝은(화이트) 또는 어두운(블랙) 값을 갖는 이진 화상으로 변환된다.
도 4는 본 발명의 일실시예에 따른 2차원 코드 판독 장치의 구성을 나타내는 블록도이다. 도 4에는, 메모리(12) 및 중앙처리장치(CPU; 13)를 구비하는 제어부(11), 화상 정보(2차원 코드)를 표시하는 디스플레이(14), 및 화상 정보를 캡쳐하는 카메라(화상 캡쳐부; 18)를 포함하는 2차원 코드 판독 장치(10)가 도시되어 있다. 도시된 실시예는 2차원 코드 판독 장치(10)의 기능을 갖고 음성 신호를 출력하는 스피커(15), 음성 신호를 입력하는 마이크로폰(16), 키 조작에 의해 정보를 입력하는 키 입력부(17), 무선 전파를 송수신하는 안테나(19), 및 무선 전파의 송수신을 제어하는 무선 제어부(20)를 갖는 디지털 카메라가 내장된 휴대 전화(이하, 디지털 카메라가 내장된 휴대 전화라 함)의 내부 구성을 나타내는 일예이다.
제어부(11)에서, 메모리(12)는 디지털 카메라(18)를 통해 입력되는 화상 데이터(12b), 및 2차원 판독 장치(10)의 기능을 수행하는 2차원 코드 판독 프로그램(12a)을 기억한다. CPU(13)는 2차원 코드 판독 프로그램(12a)을 판독하여 이 프로그램에 따라 2차원 코드 화상(화상 데이터(12b) 처리를 수행한다. 2차원 코드 판독 프로그램(1a)은 2차원 코드 영역 결정부(12a1), 검사 라인 설정부(12a2), 및 디코딩부(12a3)를 포함한다.
디지털 카메라가 내장된 휴대 전화(10)는, 카메라(18)에 의해 캡쳐된 2차원 코드 화상 또는 무선부(20)로부터 네트워크 등을 통해 디지털 카메라가 내장된 다 른 휴대 전화로 동일한 화상을 판독한 결과를 전송할 수 있고, 2차원 코드 화상 또는 동일한 화상을 판독한 결과를 디지털 카메라가 내장된 다른 휴대 전화로부터 네트워크 등을 통해 수신할 수 있다. 본 실시예는 2차원 코드 판독 프로그램(12a)을 저장하고 이 2차원 코드 판독 처리를 수행하는 서버(도시하지 않음)를 사용하여도 된다. 이 경우, 서버는 디지털 카메라가 내장된 휴대 전화 또는 개인용 컴퓨터 등으로부터 네트워크를 통해 2차원 코드 화상을 수신하고, 수신한 화상으로부터 2차원 코드 판독을 처리하며 그 처리 결과를 회신한다.
2차원 코드 영역 결정부(12a1)는 디지털 카메라(18)에 의해 캡쳐된 2차원 코드 화상 내의 2차원 코드 영역을 결정한다. 다음으로, 검사 라인 설정부(12a2)는, 2차원 코드 영역에서 판독되는 각 이진 데이터 셀의 중심 위치를 결정하기 위해 검사 라인을 설정하되, 각 검사 라인은 2차원 코드 영역 결정부(12a1)에 의해 결정된 2차원 코드 영역의 경계를 형성하는 4개 변중 대향하는 2개 변 상의 2개 점을 연결한다. 마지막으로, 디코딩부(12a3)는 검사 라인 설정부(12a2)에 의해 설정된 검사 라인에 기초하여 2차원 코드 정보의 재생 처리를 수행한다.
스택형 2차원 코드(즉, 바코드)로 동작하는 경우, 2차원 코드 영역 결정부(12a1)는 카메라(18)에 의해 캡쳐된 2차원 코드 화상 내에서 2차원 코드 영역 처리를 수행한다. 다음으로, 검사 라인 설정부(12a2)는, 2차원 코드 영역에서 판독되는 각 바코드의 중심 위치를 결정하기 위해, 2차원 코드 영역 결정부(12a1)에 의해 결정된 2차원 바코드 영역의 경게를 형성하는 4개 변중 2개의 대향하는 변 상의 2개 점을 연결하는 검사 라인 설정 처리를 수행한다. 마지막으로, 디코딩부(12a3)는 검사 라인 설정부(12a2)에 의해 설정된 검사 라인에 기초하여 2차원 코드 정보의 재생 처리를 수행한다.
2차원 코드 영역 결정부(12a1)는, 카메라(18)에 의해 캡쳐된 2차원 코드 화상으로부터 인덱스 패턴(도 2의 Di), 및 3개의 위치 검출 소자 패턴(도 2의 A, B, C)의 좌표 위치의 4개 세트를 검출하고, 2차원 코드 크기를 결정한다. 다음으로, 검사 라인 설정부(12a2)는 2차원 코드의 경사 정보를 추가함으로써 화상 경사에 대하여 보상된 화상 위치의 계수를 결정하고, 2차원 코드의 경사 정보를 추가함으로써 화상 경사에 대하여 보상된 각 셀의 중심 위치의 좌표 위치를 결정하기 위해 화상 위치 계산식에서의 계수를 결정하며, 결정된 대응하는 계수를 적용함으로써 각 셀의 중심 위치의 좌표 위치를 결정하고, 결정된 중심 위치에 대응하는 화상 데이터로부터 이진 데이터를 생성한다. 디코딩부(12a3)는 이진 데이터에 기초하여 2차원 코드의 정보를 재생한다.
도 5는 본 발명의 다른 실시예에 따른 2차원 코드 판독 장치의 구성을 도시하는 블록도이다. 도 5에는, 메모리(32) 및 중앙처리장치(CPU; 33)를 구비하는 제어부(31), 화상 정보(2차원 코드)를 표시하는 디스플레이(34), 및 화상 정보를 캡쳐하는 카메라(화상 캡쳐부; 36)를 포함하는 2차원 코드 판독 장치(30)가 도시되어 있다. 도시된 실시예는 2차원 코드 판독 장치(30)의 기능을 갖는 디지털 카메라(이하, 디지털 카메라라 함)의 내부 구성을 나타내는 일예이다.
제어부(31)에서, 메모리(32)는 디지털 카메라(36)를 통해 입력되는 화상 데이터(32b), 및 2차원 판독 장치(30)의 기능을 수행하는 2차원 코드 판독 프로그램(32a)을 기억한다. CPU(33)는 2차원 코드 판독 프로그램(32a)을 판독하여 이 프로그램에 따라 2차원 코드 화상 처리를 수행한다. 2차원 코드 판독 프로그램(32a)은 2차원 코드 영역 결정부(32a1), 검사 라인 설정부(32a2), 및 디코딩부(32a3)를 포함한다. 2차원 코드 영역 결정부(32a1), 검사 라인 설정부(32a2 ), 및 디코딩부(32a3)에 의해 수행되는 동작은, 도 4에 도시한 2차원 코드 영역 결정부(12a1), 검사 라인 설정부(12a2), 및 디코딩부(12a3)의 동작과 유사하기 때문에, 이에 대해서는 더 설명하지 않는다.
일반적으로, 2차원 코드 화상이 언제나 왜곡없이 검출될 수 없다. 예를 들어, 비스듬히 판독된 2차원 코드 화상은 흔히 왜곡될 수 있다. 특히, 도 6에 도시한 바와 같이 기록 매체(많은 경우에 있어서 종이) 상에 기록된 2차원 코드를, 기록 매체의 표면으로부터 떨어져 있는 디지털 카메라(30) 또는 디지털 카메라가 내장된 휴대 전화(10)에 의해 캡쳐하는 경우, 판독된(즉, 캡쳐된) 2차원 코드 화상은 대개는 왜곡되며, 그 이유는 2차원 코드가 비접촉식으로 판독되기 때문이다. 도 6은 인쇄 화상으로부터 떨어져 있는 디지털 카메라(30) 또는 디지털 카메라가 내장된 휴대 전화(10)에 의해 2차원 코드의 인쇄 화상을 판독하는 경우, 및 인쇄 화상 으로부터 떨어져 (인쇄 화상에 대하여 직각이 아니라) 비스듬히 캡쳐된 2차원 코드 화상이 왜곡될 수 있는 경우를 설명하기 위한 도면이다.
본 발명의 따른 2차원 코드 판독 방법에 의해 왜곡을 갖는 2차원 코드 화상을 정확하고도 빠르게 판독할 수 있으며, 이하 상세히 설명한다.
비스듬히 캡쳐되어 왜곡 화상으로 기록된 2차원 코드로 구성되는 각 셀의 중심 위치를 정확하고도 빠르게 결정하는 방법을 먼저 설명한다. 카메라에 의해 캡쳐된 매트릭스형 2차원 코드(또는 스택형 2차원 코드)를 판독하는 높은 인식율을 달성하기 위해, 경사 정보에 기초하여 화상 경사를 보상함으로써, 정면이 아닌 위치에서 캡쳐된 화상을 정면에서 캡쳐된 2차원 코드 화상으로 변환할 필요가 있다.
경사 정보(즉, 2차원 코드에 관한 깊이 정보)에 따른 화상 경사를 보상하는 방법은 다음과 같다. 이 경우, 디지털 카메라의 렌즈 축을 원점(O)라고 가정하고 깊이 방향을 z로 표현하면, 카메라 렌즈가 초점을 갖는 광축에 수직하는 피사체 면(정확한 화상면)(Π)은 z=a에 의해 얻어진다.
광축에 수직하는 정확한 화상면(Π)으로부터 기울어진 상태에서 2차원 코드를 얻은 것이라 가정한다. 2차원 코드가 정확한 화상면(Π) 상에 적용되면, 기울어진 상태에서의 위치 P(u, v, a)는 위치 Q(x, y, z)에 존재할 것이다. 이러한 2개 위치는 3차원 공간에서 유사 변환 관계에 있으며, 이 관계식은 동차 좌표를 이용하는 다음의 수학식 1에 의해 표현될 수 있다.
Figure 112003025933582-pat00001
반면, 실제 캡쳐된 화상 상의 임의의 위치는, 원점(O)을 위치(Q)와 연결하는 라인 세그먼트가 피사체 면(Π)과 교차하는 점이다. 그 위치를 R(X, Y, a)로서 표현하면, 다음의 수학식을 얻게 된다.
Figure 112003025933582-pat00002
Figure 112003025933582-pat00003
수학식 1의 x 및 y을 수학식 2와 수학식 3내에 대입하면, 아래와 같다.
Figure 112003025933582-pat00004
Figure 112003025933582-pat00005
여기서, a는 상수이고, 이에 따라 9개의 미지수(a00, a10, a01, a11, (a02·a+a03), (a12·a+a13), a20, a21, (a22·a+a23))가 존재한다.
a20 ≠0 이면,
Figure 112003025933582-pat00006
Figure 112003025933582-pat00007
Figure 112003025933582-pat00008
Figure 112003025933582-pat00009
Figure 112003025933582-pat00010
Figure 112003025933582-pat00011
Figure 112003025933582-pat00012
Figure 112003025933582-pat00013
수학식 4와 수학식 5는 다음과 같이 표현될 수 있다.
Figure 112003025933582-pat00014
Figure 112003025933582-pat00015
따라서, 적절히 선택되는 4개 셀의 위치(u, v)에 대응하는 화상의 좌표(X, Y)가 얻어지면, 연립 방정식 14 및 15를 풀 수 있다. 따라서, 8개의 계수(b00, b01, b02, b10, b11, b12, b21, b22)를 얻게 된다.
반면, a20=0 이라면, 미지수의 개수는 8개이다. 마찬가지로, 4개 셀의 위치(u, v)에 대응하는 화상의 좌표(X, Y)가 얻어지면, 상기한 연립 방정식을 또한 풀 수 있다.
a20 이 0 인 경우 또는 0 이 아닌 경우에 수학식을 풀 수 있기 때문에, 수학식 4와 5는 상기한 값을 이용하여 다음의 수학식으로 대체될 수 있다.
Figure 112003025933582-pat00016
Figure 112003025933582-pat00017
Figure 112003025933582-pat00018
Figure 112003025933582-pat00019
Figure 112003025933582-pat00020
또한, 셀 중심 위치(u0, v0)에 대응하는 화상 좌표 위치가 (x0, Y0)이라면, 수학식은 다음의 수학식으로 대체될 수 있다.
Figure 112003025933582-pat00021
Figure 112003025933582-pat00022
Figure 112003025933582-pat00023
Figure 112003025933582-pat00024
Figure 112003025933582-pat00025
A, B, C는 셀 중심 위치(u,v)에 대하여 점화식에 의해 표현될 수 있기 때문에, 각 셀의 중심 위치에 대응하는 화상 위치, 즉, 화상 좌표 위치(X, Y)를 결정하는 계산은 덧셈 3번 및 나눗셈 2번을 행할 수 있고, 이에 따라 계산 속도가 빨라진 다.
<제1 실시예>
이하, 상기한 2차원 코드 판독 방법을 구현하는 본 발명의 제1 실시예를 설명한다. 도 7은 본 발명의 2차원 코드 판독 방법에 관한 제1 실시예의 프로세스를 나타내는 흐름도이다. 본 실시예는 도 4에 도시한 2차원 코드 판독 장치(10)에 기초하여 2차원 코드 판독 프로세스를 수행하는 대표적인 예를 설명하는 것이다.
도 7에서, 2차원 코드 영역 결정부(12a1)는 2차원 코드의 특징적 패턴으로부터
3개의 위치 검출 소자 패턴(A, B, C), 하나의 인덱스 패턴(Di(i=0,1,...9))을 포함하는 4개의 좌표 위치(화상 좌표 위치)를 검출하고(단계 S11), 이후 2차원 코드 크기를 나타내는 2차원 코드의 기호 모델 번호를 결정한다(단계 S12). 즉, 화상 내의 2차원 코드 영역은 단계 S11에서 결정되고 검출된 2차원 코드의 셀 개수는 단계 S12에서 결정된다.
검사 라인 설정부(12a2)는, 단계 S11에서 검출된 4개 패턴의 좌표 위치(화상 좌표 위치)(X, Y) 및 이 좌표 위치에 대응하는 각 셀의 중심 위치(u, v)를 수학식 16 내지 20에 대입함으로써, 수학식 16 내지 18의 계수(c00 내지 c22)를 결정하며, 이 중심 위치는 단계 S11에서 검출된 기호 모델 개수로부터 얻을 수 있다(단계 S13). 또한, 검사 라인 설정부(12a2)는, 단계 S13에서 결정된 계수를 적용함으로써 (단계 S14에서) 수학식 16 내지 20에 따른 2차원 코드의 4개 패턴 이외의 각 셀의 중심 위치의 좌표 위치(화상 좌표 위치)를 결정한다. 이 설정부는 얻어진 좌표 위치(화상 좌표 위치)에 대응하는 셀 데이터로부터 각 셀이 밝은(화이트) 또는 어두운(블랙)지 여부를 판별하고, 셀 각각에 대하여 이진 비트 데이터("0" 또는 "1")를 생성한다(단계 S15). 마지막으로, 디코딩부(12a3)는 셀 각각에 대하여 생성된 이진 데이터에 기초하여 2차원 코드 정보를 재생한다(단계 S16).
다시 말하면, 단계 S16은, 매트릭스형 2차원 코드의 4변 중 대향하는 2쌍 각각 사이의 각 데이터 셀의 중심 위치를 결정하기 위한 검사 라인을 설정함으로써 또는 바코드 배열 방향으로 한 쌍의 대향하는 변 사이의 검사 라인을 설정함으로써 단계 S11에서 결정된 2차원 코드 내의 각 데이터 셀의 중심 위치 결정 처리를 수행한다. 2차원 코드의 셀 중심 위치를 식별하기 위한 검사 라인은, 결정된 2차원 코드 영역의 좌표 위치(즉, 화상의 2차원 코드의 좌표 위치, 화상 좌표 위치라고도 함), 및 대응하는 2차원 코드의 셀 중심 위치에 기초하여 화상 경사에 대하여 보상된 2차원 코드의 셀 중심 위치를 결정하기 위한 화상 위치 계산식의 계수를 계산함으로써 그리고 비스듬히 캡쳐된 2차원 코드 화상에 대하여 깊이 정보를 추가함으로써 결정된다. 이것은 검사 라인의 경사에 대응하는 각 셀 중심 위치의 좌표 위치를 결정한다.
다시 도 8을 참조하면, 각 셀 중심 위치의 좌표 위치(화상 좌표 위치)를 결정하는 처리(즉, 도 7의 단계 S14)를 이하 더 상세히 설명한다. 도 8은 각 셀의 중심 위치의 좌표 위치(화상 좌표 위치)를 결정하는 프로시저를 도시하는 흐름도로 서, 이 프로시저는 점화식(A, B, C)을 이용한다.
도 8에서, 검사 라인 설정부(12a2)는 먼저 수학식 16 내지 20의 변수를 초기화한다(단계 S21). 초기화되는 변수는 v 및 u(모두 0으로 설정됨)이며, v 방향(행)으로의 점화식에서 A, B, C의 초기값(A0, B0, C0) 및 2차원 코드로 구성되는 각 셀의 행 번호 및 열 번호에 대응한다.
즉, v=0 및 u=0을 수학식 16 내지 18에 대입함으로써 A=A0=c02, B=B0=c12, C=C0=c22 가 주어진다.
다음으로, 검사 라인 설정부(12a2)는 수학식 19 및 20에 따라 2차원 코드 화상에서 각 셀의 중심 위치의 좌표 위치(화상 좌표 위치)를 계산한다(단계 S22).
v=0 및 u=0인 초기 상태에서,
Figure 112003025933582-pat00026
Figure 112003025933582-pat00027
또한, 검사 라인 설정부(12a2)는 X, Y 에 대응하는 좌표 위치(화상 좌표 위치)의 화상 데이터로부터 셀이 밝은지(화이트) 어두운지(블랙) 여부를 구별하여 대응하는 셀용 이진 데이터("0" 또는 "1")를 생성한다(단계 S23).
밝은 값 및 어두운 값을 결정하기 위해 다양한 방법을 이용할 수 있다. 예를 들어, 끝수를 버리거나 반올림함으로써 좌표 위치(화상 좌표 위치)에 가장 근사 한 화소의 화소값을 얻는 근사 방법, 좌표 위치(화상 좌표 위치)의 끝수를 이용함으로써 위치 정보에 이웃하는 4개 화소의 화소값으로 선형 보간을 수행하는 쌍일차 방법, 및 보다 정밀한 근사를 달성하는 쌍삼차 방법이 공지되어 있다.
다음으로, 검사 라인 설정부(12a2)는 방향(u)(열 방향)에 대하여 갱신을 수행한다(단계 S24). 즉, 값(u)은 1씩 증분되어 A, B, C가 갱신된다. 수학식 16 내지 18로부터 자명하듯이, u가 1씩 증분되면, c00, c10 및 c20은 각각 A, B, C에 더해지며, C 언어를 이용하여 A+=c00, B+=c10, C+=c20 으로 표현된다(단계 S24).
검사 라인 설정부(12a2)는 2차원 코드의 u방향(열 방향)으로의 값 갱신이 완료되었는지 여부를 판별한다. "u"값이 2차원 코드 영역의 경계를 초과하지 않으면(단계 S25에서 "No"), 이 설정부는 단계 S22로 복귀하여 동일한 처리를 반복한다. "u"값이 2차원 코드 영역의 경계를 초과하면(단계 25에서 "Yes"), "v"방향(행)에서의 값 갱신을 수행한다(단계 S26).
v는 1씩 증가하고 u(열)는 0으로 리셋되고, 이후 A(A0), B(B0), C(C0)이 갱신된다. 즉, 수학식 16 내지 18로부터 자명하듯이, "v"이 1씩 증가하고 A(A0), B(B0), C(C0)를 갱신함으로써, A, B, C는 전치값 c01, c11, c21 추가에 의해 각각 증가하며, 이것은 C언어를 이용하여 각각 A0+=c01, B0+=c11, C0+=c21로 표현된다.
마지막으로, 검사 라인 설정부(12a2)는 2차원 코드의 v방향(행 방향)으로의 값 갱신이 완료되었는지 여부를 판별한다. "v"값이 2차원 코드 영역의 경계를 초과하지 않으면(단계 S27에서 "No"), 이 설정부는 단계 S22로 복귀하여 동일한 처리 를 반복한다. "v"값이 2차원 코드 영역의 경계를 초과하면(단계 27에서 "Yes"), 처리를 종료한다.
도 7의 단계 S13에서 도시한 바와 같이 수학식 16 내지 18의 계수(c00 내지 c22)를 결정하는 일예를 상세히 설명한다. 도 7의 단계 S11에서 검출된 4개 좌표 위치(화상 좌표 위치)중 3개는 도 2에 도시한 QR 코드의 위치 검출 소자 패턴(A, B, C)에 관한 것이다. 나머지 좌표 위치(화상 좌표 위치)는 인덱스 패턴 Di중 임의의 하나이다. 일반적으로, 2차원 코드에는 도 2의 QR 코드에 도시한 바와 같이 복수의 인덱스 패턴(Di)가 제공된다. 3개의 위치 검출 소자 패턴(A, B, C)(즉, 도 2에 도시한 QR 코드의 예에서 인덱스 패턴 Dmax)로부터 가장 멀리 떨어져 있는, 인덱스 패턴(Di)중 하나를 선택하는 것이라 가정한다.
다음으로, 2차원 코드는 m x m 셀 크기를 갖고 위치 검출 소자 패턴(A, B, C) 각각은 7 x 7 셀 크기를 갖고 (즉, 패턴(A, B, C)은 2차원 코드의 대응하는 코너로부터 4 x 4 셀만큼 내부에 배치됨) 인덱스 패턴(Dmax)은 2차원 코드의 나머지 코너로부터 7 x 7 셀만큼 내부에 배치된다고 가정한다. 상기한 패턴 배열에서, 4개의 좌표 위치(화소 좌표 위치)에 대응하는 셀 중심 위치의 좌표는 위치 검출 소자 패턴(A)에 대해서는 (3, 3, a), 위치 검출 소자 패턴(B)에 대해서는 (m-4, 3, a), 위치 검출 소자 패턴(C)에 대해서는 (3, m-4, a), 인덱스 패턴(Dmax)에 대해서는 (m-7, m-7, a)로 표현된다.
각 셀의 중심 위치는 예를 들어 가우스법을 이용하는 수학 계산에 의해 4개의 좌표 위치(화상 좌표 위치) 및 대응하는 셀 중심 위치의 좌표로부터 결정될 수 있다. 그러나, 계산 시간 및 정밀도를 고려할 때(나눗셈은 여러 번 수행되어야 함), 기호에 의한 전형적인 해를 미리 구하는 것이 바람직하다.
각각 (X0, Y0), (X1, Y1), (X2, Y2), (X3, Y3)로 표현되는, 위치 검출 소자 패턴(A, B, C) 및 인덱스 패턴(Dmax)의 4개 좌표 위치(화상 좌표 위치)를 이용함으로써 기호에 의한 전형적인 해를 미리 구하는 경우, 수학식 16 내지 18의 계수(c00 내지 c22)는 다음의 수학식 23 내지 31로 구해진다.
Figure 112003025933582-pat00028
Figure 112003025933582-pat00029
Figure 112003025933582-pat00030
Figure 112003025933582-pat00031
Figure 112003025933582-pat00032
Figure 112003025933582-pat00033
Figure 112003025933582-pat00034
Figure 112003025933582-pat00035
Figure 112003025933582-pat00036
m(4의 배수 + 1)은 QR 코드의 속성에 기인하기 때문에, 다음과 같은 식을 얻을 수 있다.
Figure 112003025933582-pat00037
따라서,
Figure 112003025933582-pat00038
Figure 112003025933582-pat00039
Figure 112003025933582-pat00040
Figure 112003025933582-pat00041
Figure 112003025933582-pat00042
Figure 112003025933582-pat00043
또한,
Figure 112003025933582-pat00044
때문에,
Figure 112003025933582-pat00045
Figure 112003025933582-pat00046
따라서, 수학식 23 내지 31의 계수는 다음의 수학식 42 내지 50에 의해 구해진다.
Figure 112003025933582-pat00047
Figure 112003025933582-pat00048
Figure 112003025933582-pat00049
Figure 112003025933582-pat00050
Figure 112003025933582-pat00051
Figure 112003025933582-pat00052
Figure 112003025933582-pat00053
Figure 112003025933582-pat00054
Figure 112003025933582-pat00055
즉, 수학식 16 내지 18의 계수(c00 내지 s22)는 수학식 42 내지 50을 이용하는 비교적 간단한 계산을 수행함으로써 결정될 수 있다. 이에 따라, 각 셀 중심 위치의 좌표 위치를 결정하는 화상 위치 계산식이 점화식에 의해 표현될 수 있다. 2차원 코드용 깊이 정보를 추가함으로써 화상 경사에 대하여 보상된 셀 중심 위치에 대응하는 좌표 위치를 결정하는 많은 계산을 상당히 줄일 수 있다. 즉, 이 방법은 간략화된 계산에 의해 2차원 코드를 즉시 판독할 수 있다.
<제2 실시예>
도 4에 도시한 바와 같이 디지털 카메라를 구비한 휴대 전화(10)를 이용함으로써 상기한 2차원 코드 판독 방법을 수행하는 본 발명의 제2 실시예를 설명한다. 디지털 카메라를 구비한 휴대 전화(10)와 같은 휴대 단말기는 비교적 작은 디지털 카메라 및 비교적 저성능 CPU를 내장하며 부동점 프로세서를 포함하지 않으며, 정수 계산만으로 2차원 코드를 판독하는 것이 바람직하다. 상기한 수학식 4 및 5에서, 계수(a00 내지 a23) 각각이 동일한 상수로 나누어지더라도, 분모 및 분자를 동일한 상수로 나누는 것이기에 X 및 Y를 결정하는 계산 결과가 동일하다는 것은 자명하다. 따라서, 각 셀 중심의 좌표 위치(화상 좌표 위치)(X, Y)는, m x m 셀로 구성된 2차원 코드의 4개 코너점((0,0), (0,m), (m,0), (m,m))에서의 좌표 위치(화상 좌표 위치)가 정수 분모 및 정수 분자를 갖도록 하는 상수를 미리 설정하기만 하면 정수 계산으로 계산될 수 있다. 디지털 카메라를 구비한 휴대 전화(10)의 검사 라인 설정부(12a2)에 의해 상기한 처리를 수행한다.
<제3 실시예>
계수의 대칭되는 전형적인 해를 얻기 위해 사용되는 수학식 분석 결과에 기 초하여 수학식 16 내지 18의 계수(c00 내지 c22)를 나누기 위한 적절한 상수를 선택하는 것도 가능하다.
예를 들어, 본 발명의 제1 실시예에 기재한 계수(c00 내지 c22)는 계수(c00 내지 c22)를 표시하기 위한 수학식 42 내지 50에서 알 수 있듯이 (4·n)을 포함하는 식을 갖는다. 따라서, 모든 계수를 (4·n) 또는 (4·n)의 배수로 나눔으로써 비교적 작은 크기의 디스플레이 스크린, 즉, 작은 크기의 2차원 코드용으로 적절한 계수(c00 내지 c22)를 구할 수 있다. 수학식 42 내지 50의 각 계수(c00 내지 c22)의 식을 (4·n)로 나누어 2차원 코드를 나타내는 보다 작은 계수(c00' 내지 c22')로 변환한다. 그 결과를 다음의 수학식 51 내지 59에 나타낸다. 디지털 카메라를 구비한 휴대 전화(10)의 검사 라인 설정부(12a2)에 의해 상기한 처리를 수행한다.
Figure 112003025933582-pat00056
Figure 112003025933582-pat00057
Figure 112003025933582-pat00058
Figure 112003025933582-pat00059
Figure 112003025933582-pat00060
Figure 112003025933582-pat00061
Figure 112003025933582-pat00062
Figure 112003025933582-pat00063
Figure 112003025933582-pat00064
본 발명을 2차원 코드 판독 처리 단계를 수행하는 본 발명의 방법을 구현하는 실시예에 대하여 설명하였지만, 본 발명은 2차원 코드 판독 방법의 처리 단계를 수행할 수 있는 2차원 코드 판독 장치, 또는 2차원 코드 판독 장치를 내장하는 디지털 카메라, 또는 디지털 카메라를 구비한 휴대 전화에도 적용될 수 있다. 또한, 본 발명은, 컴퓨터에 의해 수행될 수 있는 프로그램 코드에 의한 2차원 코드 판독 프로그램 및 2차원 코드 판독 프로그램과 데이터를 기록한 기록 매체로서도 실시될 수 있다. 본 발명은 2차원 코드 판독 프로그램와 데이터를 송수신하는 통신 네트워크와 같은 전송 매체로서 실시될 수 있다.
다음은 본 발명의 2차원 코드 판독 방법을 수행하는데 필요한 프로그램과 데이터가 기록되는 기록 매체의 일실시예에 관한 것이다. 예를 들어, CD-ROM(-R/RW), 광자기 디스크, DVD-ROM, FD, 플래시 메모리, 메모리 카드, 메모리 스틱, ROM, RAM 처럼 다양한 종류의 기록 매체를 이용하여도 된다. 컴퓨터에 의해 본 발명의 2차원 코드 판독 방법을 수행하는 프로그램을 갖는 이러한 기록 매체 각각은 널리 이용되어 본 발명의 방법을 쉽게 구현할 수 있다. 기록 매체는, 컴퓨터 프로그램이 정보 처리 장치에 로딩되어 수행될 때 그리고/또는 그 프로그램이 그 정보처리 장치 내에 배치된 기록 매체에 저장되어 필요시 정보 처리 장치에서 수행될 때 이 정보 처리 장치 상에 장착될 수 있다. 이에 따라, 본 발명에 따른 2차원 코드 기록 방법을 필요시 언제나 수행할 수 있다.
본 발명에 따라, 경사 정보에 기초하여 화상 경사를 보상함으로써 디지털 카메라에 의해 비스듬히 캡쳐된 2차원 코드를 2차원 코드의 정면 화상 정보로 변환하고, 이에 따라 2차원 코드의 보다 정밀한 값을 얻을 수 있고, 화상 변환 수학식을 점화식으로 표현함으로써 2차원 코드를 판독하는데 필요한 시간을 현저히 줄일 수 있다.

Claims (12)

  1. 이진 코드화 데이터를 나타내는 셀의 매트릭스를 형성하도록 수직 및 수평 방향으로 배열된 다수의 셀로 구성된 매트릭스형 2차원 코드 화상을 얻는 단계, 상기 화상에서의 2차원 코드 영역을 결정하는 단계, 상기 셀 각각의 중심 위치를 식별하는 검사 라인을 설정하는 단계 - 상기 검사 라인 각각은 상기 결정된 2차원 코드 영역의 경계를 규정하는 4개 변중 대향하는 2개 쌍을 연결함 -, 및 검사 라인 설정 단계에 의해 설정된 상기 검사 라인에 기초하여 상기 2차원 코드 정보를 재생하는 단계를 포함하는 2차원 코드 판독 방법으로서,
    상기 2차원 코드에 대한 경사 정보를 추가함으로써 화상 경사에 대해 보상된 상기 2차원 코드에서의 각 셀의 중심 위치의 좌표 위치를 계산하는 화상 위치 계산식에서의 계수는, 상기 2차원 코드 영역 결정 단계에 의해 결정된 상기 2차원 코드 영역 내의 4개 점의 좌표 위치에 기초하여, 상기 2차원 코드 화상 상에 검사 라인을 설정하도록 계산되는 것을 특징으로 하는 2차원 코드 판독 방법.
  2. 제1항에 있어서,
    상기 2차원 코드 화상에서의 상기 각 셀의 중심 위치의 상기 좌표 위치를 결정하는 상기 화상 위치 계산식 각각은, 각 셀의 중심 위치에 대하여 점화식으로 표현되어, 상기 2차원 코드 상에 경사 정보를 추가함으로써 화상 경사에 대해 보상된 각 셀의 중심 위치 상에 좌표 위치를 결정하기 위한 계산 양이 줄어드는 것을 특징 으로 하는 2차원 코드 판독 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 2차원 코드 영역의 4개 코너에서의 좌표 위치를 계산하기 위한 상기 화상 위치 계산식에서의 계수는 소정의 동일한 상수로 나누어져 정수로 되며,
    상기 셀 중심 위치의 상기 좌표 위치는 상기 정수 계산에 의해서 결정되는 것을 특징으로 하는 2차원 코드 판독 방법.
  4. 제1항 또는 제2항에 있어서,
    상기 화상 위치 계산식에 대하여 상징적으로 결정되고 흔히 상수중에서 선택되고 상기 화상 위치 계산식에서 공통으로 사용되는 상기 계수를 나누기 위한 상수를 사용하여, 상기 계수를 나누고 더 작은 크기의 계수로 변환하여 2차원 코드를 판독가능하게 하는 것을 특징으로 하는 2차원 코드 판독 방법.
  5. 데이터를 나타내는 각 바코드에서의 바 배열 방향에 수직하는 방향으로 다층 배열된 다수의 바코드로 구성된 스택형 2차원 코드 화상을 얻는 단계, 상기 화상에서의 2차원 코드 영역을 결정하는 단계, 상기 각 바코드의 중심 위치를 식별하는 검사 라인을 설정하는 단계 - 상기 검사 라인은 상기 결정된 2차원 코드 영역의 경계를 나타내는 4개 변의 대향하는 두 쌍중 한 쌍을 연결하고, 상기 쌍은 각 바코드의 배열 방향에서 서로 대향함 -; 및 상기 검사 라인 설정 단계에서 설정된 상기 검사 라인에 기초하여 상기 2차원 코드의 정보를 재생하는 단계를 포함하는 2차원 코드 판독 방법으로서,
    상기 2차원 코드에 대한 경사 정보를 추가함으로써 화상 경사에 대하여 보상된 상기 2차원 코드에서의 각 셀의 중심 위치의 좌표 위치를 계산하는 화상 위치 계산식에서의 계수는, 상기 2차원 코드 영역 결정 단계에 의해 결정된 상기 2차원 코드 영역 내의 4개 점의 좌표 위치에 기초하여 상기 2차원 코드 화상 상에 상기 검사 라인을 설정하도록 계산되는 것을 특징으로 하는 2차원 코드 판독 방법.
  6. 컴퓨터에 의해 판독가능하며, 제1항, 제2항, 및 제5항중 어느 한 항에 기재된 상기 2차원 코드 판독 프로그램을 기록하는 것을 특징으로 하는 컴퓨터에 의해 판독가능한 프로그램 기록 매체.
  7. 각 셀이 이진 코드화 데이터를 나타내는 셀의 매트릭스를 형성하도록 수직 및 수평 방향으로 배열된 다수의 셀로 구성된 매트릭스형 2차원 코드의 화상을 캡쳐하는 화상 캡쳐부, 상기 2차원 코드 화상에서의 2차원 코드 영역을 결정하는 2차원 코드 영역 결정부, 상기 셀 각각의 중심 위치를 식별하는 검사 라인을 설정하는 검사 라인 설정부 - 상기 검사 라인 각각은 상기 결정된 2차원 코드 영역의 경계를 규정하는 4개 변중 2개의 대향하는 쌍을 연결함-, 및 상기 검사 라인에 기초하여 상기 2차원 코드 정보를 재생하는 디코딩부를 포함하는 2차원 코드 판독 장치로서,
    상기 2차원 코드 영역 결정부에 의해 결정된 상기 2차원 코드 영역 내의 4개 점의 좌표 위치에 기초하여 상기 검사 라인 설정부는, 상기 2차원 코드에 대한 경사 정보를 추가함으로써 상기 화상의 경사에 대하여 보상된 상기 2차원 코드에서의 각 셀의 중심 위치의 좌표 위치를 결정하기 위한 화상 위치 계산식에 대한 계수를 계산하는 것을 특징으로 하는 2차원 코드 판독 장치.
  8. 제7항에 있어서,
    상기 2차원 코드 화상에서의 상기 각 셀의 중심 위치의 상기 좌표 위치를 결정하는 상기 화상 위치 계산식 각각은, 상기 각 셀의 중심 위치에 대하여 점화식으로 표현하여, 상기 2차원 코드의 경사 정보를 추가함으로써 화상 경사에 대하여 보상된 각 셀의 중심 위치의 상기 좌표 위치를 결정하기 위한 계산 양이 줄어드는 것을 특징으로 하는 2차원 코드 판독 장치.
  9. 제7항 또는 제8항에 있어서,
    상기 2차원 코드 영역의 4개 코너에서의 좌표 위치를 계산하기 위한 상기 화상 위치 계산식에서의 계수는 소정의 동일한 상수로 나누어져 정수로 되며,
    상기 셀 중심 위치의 상기 좌표 위치는 상기 정수 계산에 의해서 결정되는 것을 특징으로 하는 2차원 코드 판독 장치.
  10. 제7항 또는 제8항에 있어서,
    상기 화상 위치 계산식에 대하여 상징적으로 결정되고 흔히 상수중에서 선택 되고 상기 화상 위치 계산식에서 공통으로 사용되는 상기 계수를 나누기 위한 상수를 사용하여, 상기 계수를 나누어 더 작은 크기의 계수로 변환하여 상기 2차원 코드를 판독가능하게 하는 것을 특징으로 하는 2차원 코드 판독 장치.
  11. 제7항 또는 제8항에 기재된 2차원 코드 판독 장치를 내장하는 것을 특징으로 하는 디지털 카메라.
  12. 디지털 카메라를 구비하며, 제7항 또는 제8항에 기재된 2차원 코드 판독 장치를 내장하는 것을 특징으로 하는 휴대 전화.
KR1020030048585A 2002-07-18 2003-07-16 2차원 코드 판독 방법, 2차원 코드 판독 프로그램을기록한 기록 매체, 2차원 코드 판독 장치, 디지털 카메라및 디지털 카메라를 구비한 휴대용 단말기 KR100570242B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002210211A JP2004054529A (ja) 2002-07-18 2002-07-18 2次元コード読み取り方法,2次元コード読み取りプログラム,該2次元コード読み取りプログラムの記録媒体及び2次元コード読み取り装置
JPJP-P-2002-00210211 2002-07-18

Publications (2)

Publication Number Publication Date
KR20040010218A KR20040010218A (ko) 2004-01-31
KR100570242B1 true KR100570242B1 (ko) 2006-04-12

Family

ID=29774663

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030048585A KR100570242B1 (ko) 2002-07-18 2003-07-16 2차원 코드 판독 방법, 2차원 코드 판독 프로그램을기록한 기록 매체, 2차원 코드 판독 장치, 디지털 카메라및 디지털 카메라를 구비한 휴대용 단말기

Country Status (6)

Country Link
US (1) US6786412B2 (ko)
EP (1) EP1383070B1 (ko)
JP (1) JP2004054529A (ko)
KR (1) KR100570242B1 (ko)
CN (1) CN1260673C (ko)
DE (1) DE60331880D1 (ko)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003227506A1 (en) * 2003-04-15 2004-11-04 Fujitsu Limited Code recognizing method and device
US7410099B2 (en) * 2003-06-05 2008-08-12 Ntt Docomo, Inc. Apparatus and method for reading and decoding information contained in a barcode
EP1727070A4 (en) * 2004-03-04 2008-03-19 Sharp Kk METHOD AND DEVICE FOR THE TWO-DIMENSIONAL CODEREGION EXTRACTION, ELECTRONIC DEVICE, TWO-DIMENSIONAL CODEREGION EXTRACTION PROGRAM AND RECORDING MEDIUM CONTAINING THE PROGRAM
US7296747B2 (en) * 2004-04-20 2007-11-20 Michael Rohs Visual code system for camera-equipped mobile devices and applications thereof
JP2005316755A (ja) * 2004-04-28 2005-11-10 Nec Electronics Corp 2次元矩形コードシンボル読み取り装置及び2次元矩形コードシンボル読み取り方法
JP4794847B2 (ja) * 2004-10-29 2011-10-19 キヤノン株式会社 2次元コードおよび情報処理方法
WO2006112866A2 (en) * 2005-04-13 2006-10-26 Scanbuy, Inc. Visual code system for camera-equipped mobile devices and applications thereof
EP1904952A2 (en) * 2005-05-23 2008-04-02 Nextcode Corporation Efficient finder patterns and methods for application to 2d machine vision problems
US8430300B2 (en) * 2005-05-26 2013-04-30 Codebroker, Llc Using validity events to control the use of coupons containing barcodes in mobile devices that display the barcodes for reading by barcode readers
US7412106B1 (en) 2005-06-25 2008-08-12 Cognex Technology And Investment Corporation Methods for locating and decoding distorted two-dimensional matrix symbols
US7597262B2 (en) * 2005-07-13 2009-10-06 Nokia Corporation Two dimensional (2D) code and code size indication method
KR100828539B1 (ko) * 2005-09-20 2008-05-13 후지제롯쿠스 가부시끼가이샤 이차원 코드의 검출 방법, 검출 장치, 및 검출 프로그램을기억한 기억 매체
JP2007156879A (ja) * 2005-12-06 2007-06-21 Sony Corp 情報処理装置および方法、並びにプログラム
US7878402B2 (en) * 2005-12-20 2011-02-01 Cognex Technology And Investment Corporation Decoding distorted symbols
JP2007172304A (ja) * 2005-12-22 2007-07-05 Sony Corp 2次元バーコード、情報処理装置、情報処理方法、並びにプログラム
US7546950B2 (en) * 2006-03-28 2009-06-16 Seiko Epson Corporation Method and apparatus for locating and decoding a two-dimensional machine-readable symbol
US8150163B2 (en) * 2006-04-12 2012-04-03 Scanbuy, Inc. System and method for recovering image detail from multiple image frames in real-time
US8736615B2 (en) * 2006-04-27 2014-05-27 Codebroker, Llc Customizing barcode images for particular displays
KR100829108B1 (ko) * 2006-06-27 2008-05-16 (주)코아정보시스템 패턴 기울기 계산 기능을 갖는 2차원 바코드 판독 장치 및방법
US8448061B1 (en) 2007-03-30 2013-05-21 Adobe Systems Incorporated User interfaces and methods to create electronic documents with forms implementing content input fields
US8746581B2 (en) 2007-06-19 2014-06-10 Codebroker, Llc Techniques for providing an electronic representation of a card
CN101419637B (zh) * 2007-10-22 2011-08-24 鸿富锦精密工业(深圳)有限公司 冲压模具未封闭图形自动检查系统及方法
US20100084479A1 (en) * 2008-10-02 2010-04-08 Silverbrook Research Pty Ltd Position-coding pattern having tag coordinates encoded by bit-shifted subsequences of cyclic position code
EP2345002A1 (en) * 2008-10-29 2011-07-20 Schreiner GmbH & Co. KG Method and apparatus for determining the position of a noise-like pattern within an image
US8101813B2 (en) * 2008-10-30 2012-01-24 Kimberly-Clark Worldwide, Inc. Training progress indicator
US9018434B2 (en) 2010-08-06 2015-04-28 Kimberly-Clark Worldwide, Inc. Absorbent articles with intricate graphics
USD656852S1 (en) 2010-08-06 2012-04-03 Kimberly-Clark Worldwide, Inc. Wetness indicator
US20120173249A1 (en) 2010-12-30 2012-07-05 Kimberly-Clark Worldwide, Inc. Absorbent Article With Integrated Machine Readable Code
US9220640B2 (en) 2010-12-30 2015-12-29 Kimberly-Clark Worldwide, Inc. Absorbent article including two dimensional code made from an active graphic
JP5178860B2 (ja) * 2011-02-24 2013-04-10 任天堂株式会社 画像認識プログラム、画像認識装置、画像認識システム、および画像認識方法
JP5362058B2 (ja) * 2011-05-17 2013-12-11 東芝テック株式会社 コード読取装置及びプログラム
KR101237339B1 (ko) * 2011-09-08 2013-02-28 (주)이컴앤드시스템 2차원 바코드 영상의 추출 및 디코딩 장치, 그 방법
TW201401790A (zh) * 2012-06-20 2014-01-01 Real Touch Corp 圖碼之編碼解碼方法及其系統
US20140040928A1 (en) * 2012-08-02 2014-02-06 Microsoft Corporation Audience polling system
KR20140108749A (ko) * 2013-02-27 2014-09-15 한국전자통신연구원 프라이버시 보호형 문서 인증 정보 생성 장치 및 이를 이용한 프라이버시 보호형 문서 인증 방법
KR101460350B1 (ko) * 2013-03-26 2014-11-13 금오공과대학교 산학협력단 마커 인식 장치 및 방법
CN112861560B (zh) 2017-09-27 2023-12-22 创新先进技术有限公司 二维码定位方法及装置
CN107944321A (zh) * 2017-11-28 2018-04-20 努比亚技术有限公司 一种图像识别方法、终端和计算机可读存储介质
US10824833B2 (en) * 2018-01-11 2020-11-03 Amrita Vishwa Vidyapeetham Optical polling platform detection system
CN112740218B (zh) * 2018-10-01 2023-08-25 株式会社日立产机系统 打印检查装置
CN109753839A (zh) * 2019-01-16 2019-05-14 上海龙旗科技股份有限公司 二维码识别优化方法及设备
CN109934037B (zh) * 2019-03-14 2022-08-26 北京龙贝世纪科技股份有限公司 一种二维码图像寻像方法、定位方法、服务器及存储介质
CN110481602B (zh) * 2019-07-15 2021-06-25 广西柳钢东信科技有限公司 一种轨道运输设备的实时定位方法及装置
CN112578799B (zh) * 2021-02-25 2022-02-11 德鲁动力科技(成都)有限公司 四足机器人自主充电方法及自主充电四足机器人
CN113688649B (zh) * 2021-08-16 2024-09-13 江苏博赛孚医疗科技有限公司 一种快速的qr码定位方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3843875A (en) * 1973-03-07 1974-10-22 Remington Arms Co Inc Numerical control checkering system
US4302775A (en) * 1978-12-15 1981-11-24 Compression Labs, Inc. Digital video compression system and methods utilizing scene adaptive coding with rate buffer feedback
JPS6394623A (ja) * 1986-10-09 1988-04-25 Hitachi Ltd 描画装置
US4924078A (en) * 1987-11-25 1990-05-08 Sant Anselmo Carl Identification symbol, system and method
ATE143740T1 (de) 1989-08-02 1996-10-15 Yoshida Hirokazu Numerische datenlesevorrichtung für datenspeicherblatt
JP2000222517A (ja) 1998-11-27 2000-08-11 Denso Corp 2次元コ―ド読取方法、2次元コ―ド読取装置及び記録媒体

Also Published As

Publication number Publication date
KR20040010218A (ko) 2004-01-31
EP1383070A2 (en) 2004-01-21
EP1383070B1 (en) 2010-03-31
US20040011872A1 (en) 2004-01-22
CN1260673C (zh) 2006-06-21
US6786412B2 (en) 2004-09-07
DE60331880D1 (de) 2010-05-12
CN1512434A (zh) 2004-07-14
EP1383070A3 (en) 2006-12-13
JP2004054529A (ja) 2004-02-19

Similar Documents

Publication Publication Date Title
KR100570242B1 (ko) 2차원 코드 판독 방법, 2차원 코드 판독 프로그램을기록한 기록 매체, 2차원 코드 판독 장치, 디지털 카메라및 디지털 카메라를 구비한 휴대용 단말기
US9582701B2 (en) Information input/output method using dot pattern
EP2921998B1 (en) Two-dimensional code, system for creation of two-dimensional code, and analysis program
EP2921997B1 (en) Two-dimensional code
US8006911B2 (en) System and method for encoding and decoding large capacity 2-dimensional color bar code which can be color-corrected
US5686718A (en) Recording method, decoding method, and decoding apparatus for digital information
US6863218B2 (en) Two-dimensional code reading apparatus, two-dimensional code reading process, two-dimensional code reading program and recording medium for said program, portable terminal and digital camera
US7664312B2 (en) Information input and output method using dot pattern
KR100483393B1 (ko) 2차원 바코드의 판독 방법
EP1591944A1 (en) 2D rectangular code symbol scanning device and 2D rectangular code symbol scanning method
EP2921996B1 (en) Two-dimensional code
JP2007034625A (ja) 情報表示装置
CN111275152A (zh) 二维码、二维码的编码方法、解码方法、装置和电子系统
WO2005086074A1 (ja) 2次元コード領域抽出方法、2次元コード領域抽出装置、電子機器、2次元コード領域抽出プログラム及びそのプログラムを記録した記録媒体
WO2016166914A1 (ja) 二次元コード,二次元コード記録担体,二次元コード読取り方法,二次元コード読取用プログラムおよび二次元コード読取り装置
CN115511031A (zh) 一种扩容二维码、三维码解码方法、系统、设备和介质
JP4397866B2 (ja) 2次元パターン読み取り装置、2次元パターン読み取り方法
JPH11316795A (ja) 二次元コードデコード装置、及び記憶媒体
JP2000235632A (ja) デジタル情報記録担体、デジタル情報記録方法および装置、並びにデジタル情報解読方法および装置
JP4267965B2 (ja) バーコード読取装置
KR20070110144A (ko) 도트 패턴을 이용한 정보 입출력 방법
Kutiyanawala et al. An eyes-free vision-based UPC and MSI barcode localization and decoding algorithm for mobile phones
CN115271016A (zh) 一种多模态三维码的生成方法、系统、设备和存储介质
JP2005189976A (ja) 無線通信端末装置及び情報読取方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130321

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140319

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160328

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170324

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20180323

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190329

Year of fee payment: 14