KR20070032919A - 이차원 코드의 검출 방법, 검출 장치, 및 검출 프로그램을기억한 기억 매체 - Google Patents

이차원 코드의 검출 방법, 검출 장치, 및 검출 프로그램을기억한 기억 매체 Download PDF

Info

Publication number
KR20070032919A
KR20070032919A KR1020060090669A KR20060090669A KR20070032919A KR 20070032919 A KR20070032919 A KR 20070032919A KR 1020060090669 A KR1020060090669 A KR 1020060090669A KR 20060090669 A KR20060090669 A KR 20060090669A KR 20070032919 A KR20070032919 A KR 20070032919A
Authority
KR
South Korea
Prior art keywords
dimensional code
area
position detection
code
detection element
Prior art date
Application number
KR1020060090669A
Other languages
English (en)
Other versions
KR100828539B1 (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
Priority claimed from JP2005272915A external-priority patent/JP4645384B2/ja
Priority claimed from JP2005280798A external-priority patent/JP2007094584A/ja
Application filed by 후지제롯쿠스 가부시끼가이샤 filed Critical 후지제롯쿠스 가부시끼가이샤
Publication of KR20070032919A publication Critical patent/KR20070032919A/ko
Application granted granted Critical
Publication of KR100828539B1 publication Critical patent/KR100828539B1/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
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)

Abstract

본 발명은 직각이등변삼각형의 각 정점(頂点)에 대응하는 위치에 3개의 위치 검출 요소 패턴이 설치되고, 또한 상기 위치 검출 요소 패턴에 의해 정해지는 영역에 데이터 영역이 설치된 이차원 코드를 검출하는 방법을 제공하는 것을 과제로 한다.
상기 방법은 화상에 포함되는 복수의 위치 검출 요소 패턴을 검출하고, 검출된 위치 검출 요소 패턴의 중심점의 위치를 특정하며, 위치가 특정된 상기 중심점 중에서 직각이등변삼각형의 정점을 구성하는 3개의 중심점을 선택하고, 선택된 상기 중심점에 대응하는 상기 위치 검출 요소 패턴에 의해 정해지는 이차원 코드 영역 또는 그 주변 영역으로부터 이차원 코드로서의 특징을 추출하며, 이차원 코드로서의 상기 특징이 추출된 경우에는, 상기 이차원 코드 영역에 1개의 이차원 코드가 존재한다고 판정한다.
메모리, CPU, 외부 인터페이스, 심벌, 콰이어트 존

Description

이차원 코드의 검출 방법, 검출 장치, 및 검출 프로그램을 기억한 기억 매체{DETECTION METHOD OF TWO DIMENSIONAL CODE, DETECTION DEVICE THEREOF, AND STORAGE MEDIUM HAVING DETECTION PROGRAM STORAGED THEREIN}
도 1은 본 발명의 제 1 실시예에 따른 QR 코드의 처리 장치의 개략 구성을 나타낸 블록도.
도 2는 CPU에 의해 실행되는 처리 루틴(routine)을 나타낸 플로차트.
도 3은 QR 코드의 구조를 나타낸 개략도.
도 4는 상이한 심벌(symbol)에 포함되는 위치 검출 요소 패턴이 조합된 도면.
도 5는 조합 검출 처리의 서브루틴을 나타낸 플로차트.
도 6은 직각이등변삼각형의 기하학적인 성립 조건을 설명하기 위한 도면.
도 7은 직각이등변삼각형 판정 처리의 루틴을 나타낸 플로차트.
도 8은 직각 꼭짓점의 판정 처리의 루틴을 나타낸 플로차트.
도 9는 QR 코드같은 판정 방법을 설명하기 위한 도면.
도 10은 QR 코드의 심벌 구조를 나타낸 도면.
도 11은 콰이어트 존(quiet zone) 유무의 판정 방법을 설명하기 위한 도면.
도 12는 콰이어트 존이 존재한다고 판정되는 예를 나타낸 도면.
도 13은 콰이어트 존이 존재하지 않는다고 판정되는 예를 나타낸 도면.
도 14는 콰이어트 존 유무의 판정 처리의 루틴을 나타낸 플로차트.
도 15는 위치 검출 요소 패턴의 중심점 A와 스캔 라인의 기준점 AS의 위치 관계를 나타낸 도면.
도 16은 위치 검출 요소 패턴의 구조를 나타낸 도면.
도 17은 기준점 AS의 좌표를 구하기 위한 벡터(vector)도.
도 18은 콰이어트 존 유무의 판정 방법을 설명하기 위한 도면.
도 19는 환산값 R의 산출 방법을 설명하기 위한 개념도.
도 20은 스캔 라인의 다른 설정예를 나타낸 도면.
도 21은 스캔 영역의 설정예를 나타낸 도면.
도 22는 조합 검출 처리의 다른 루틴을 나타낸 플로차트.
도 23은 본 발명의 제 2 실시예에 따른 조합 검출 처리의 서브루틴을 나타낸 플로차트.
도 24는 본 발명의 제 3 실시예에 따른 조합 검출 처리의 서브루틴을 나타낸 플로차트.
도 25는 QR 코드같은 판정 방법을 설명하기 위한 도면.
도 26은 QR 코드같은 판정 방법을 설명하기 위한 도면.
도 27은 QR 코드같은 판정 영역을 나타낸 도면.
도 28은 QR 코드같지 않다고 판정되는 예를 나타낸 도면.
도 29는 QR 코드같은 판정 처리의 루틴을 나타낸 플로차트.
도 30은 QR 코드같은 판정 처리의 다른 루틴을 나타낸 플로차트.
도 31은 흑백 반전 회수의 카운트 예를 나타낸 도면.
도 32는 제 4 내지 제 6 실시예에 따른 복합기의 외관도.
도 33은 제 4 내지 제 6 실시예에 따른 복합기의 전기적인 구성의 개략을 나타낸 블록도.
도 34의 (A) 및 (B)는 이차원 코드의 일례로서, QR 코드의 구성을 간략하게 나타낸 설명도.
도 35는 판독 화상 영역 중에 4개의 QR 코드가 포함되어 있는 상태를 나타낸 모식도.
도 36은 QR 코드 검출 처리 프로그램의 처리의 흐름을 나타낸 플로차트.
도 37은 제 4 실시예에 따른 검출 처리 프로그램에 의해 실행되는 직각이등변삼각형 판정 처리의 흐름을 나타낸 플로차트.
도 38은 제 5 실시예에 따른 검출 처리 프로그램에 의해 실행되는 QR 코드 크기의 조건을 고려한 직각이등변삼각형 판정 처리의 흐름을 나타낸 플로차트.
도 39의 (A) 내지 (D)는 원고의 판독 방향 R에 따른 판독 화상 및 QR 코드의 상태를 나타낸 설명도.
도 40은 제 6 실시예에 따른 검출 처리 프로그램에 의해 실행되는 QR 코드의 회전 각도의 조건을 고려한 직각이등변삼각형 판정 처리의 흐름을 나타낸 플로차트.
도면의 주요 부분에 대한 부호의 설명
10 : 화상 입력 장치 12 : 메모리
14 : CPU 16 : ROM
18 : 외부 인터페이스 20 : 화상 출력 장치
22 : 데이터베이스 24 : 데이터 버스
30 : 심벌(symbol) 34 : 콰이어트 존(quiet zone)
48 : 스캔 라인
본 발명은 이차원 코드의 검출 방법, 검출 장치, 및 검출 프로그램을 기억한 기억 매체에 관한 것으로서, 특히 이차원 코드를 포함하는 화상으로부터 이차원 코드를 검출하는 방법, 검출 장치, 검출 프로그램을 기억한 기억 매체, 또한 광학적으로 판독 가능한 이차원 코드의 검출 방법 및 검출 장치에 관한 것이다.
최근에 광학적으로 판독 가능한 코드로서, 부호화된 정보를 매트릭스 위에 배열하여 패턴화한 이차원 코드가 보급되고 있다.
상이한 굵기나 간격 종선(縱線)의 조합에 의해 데이터를 표현하는 바코드는 상품의 정보 관리 등 세상에서 널리 활용되고 있다. 바코드는 종선이 일방향으로 배열된 일차원 코드이다. 최근에, 표현할 수 있는 정보량이 많기 때문에 이차원 코드의 이용이 확대되고 있다. 이차원 코드는 2진 코드에 의해 표현되는 데이터를 셀화하여 이차원의 매트릭스 위에 패턴으로서 배치한 코드이다(일본국 특허 제2938338호 공보).
종래, 예를 들어 일본국 특허 제2938338호 공보에 기재되어 있는 바와 같이, 상술한 이차원 코드에 있어서, 매트릭스 내의 적어도 2개소의 소정 위치에, 각각 중심을 모든 각도로 횡단하는 주사선에서 동일한 주파수 성분비가 얻어지는 패턴의 위치 결정용 심벌(symbol)을 배치하는, 소위 QR 코드라고 칭해지는 이차원 코드가 제안되어 있다. 이 QR 코드에 관해서는, 그 기본 사양(仕樣)이 JIS(JIS-X-0510)에 의해 규격화되어 있다.
예를 들어 종이 문서의 기재 내용을 이차원 코드로 변환하고, 그 종이 문서의 여백에 이차원 코드를 부가하여 둔다. 이것에 의해, 종이 문서를 스캔했을 때에, 부가된 이차원 코드를 인식하여 복호(復號)하면, 광학식 문자 판독 장치(OCR) 등을 사용하지 않고, 그 문서의 기재 내용을 전자 데이터로서 취득하는 것이 가능하다.
QR 코드의 심벌은, 도 3에 나타낸 바와 같이, 정사각형에 배치된 모듈로 이루어지고, 데이터의 부호화에 사용되는 부호화 영역과 위치 검출 패턴 등의 기능 패턴을 포함하여 구성되어 있다. 위치 검출 패턴은 심벌의 3코너에 배치되는 3개의 위치 검출 요소 패턴으로 구성되는 기능 패턴이다. 3개의 위치 검출 요소 패턴의 중심점은 각 중심점을 정점(頂点)으로 하는 직각이등변삼각형을 구성한다. 또한, 심벌의 4변의 주위에는 콰이어트 존(quiet zone)이라고 불리는 여백 영역이 설치되어 있다.
QR 코드를 복호할 경우에는, 전용 QR 코드 리더로 주사하여 심벌을 광학적으로 판독하고, 판독한 화상으로부터 QR 코드를 검출하며, 검출된 QR 코드를 복호한다(일본국 공개특허평06-012515호 공보). QR 코드를 검출하기 위해, 3개의 위치 검출 요소 패턴을 검출하고, 그 위치 검출 요소 패턴의 중심점의 좌표를 모두 산출한다. 중심점의 좌표의 산출은 JIS 규격(JIS-X-0510)의 p65-66에 기재된 방법에 따라 행한다. 위치 검출 요소 패턴의 중심점의 좌표가 특정됨으로써, 위치 검출 패턴의 위치가 구해지고, QR 코드가 검출된다.
또한, 바코드의 판독 방법으로서, 종래 일본국 공개특허평6-12515호 공보에 기재되어 있는 바와 같이, 이차원 코드의 개시 및 정지 코드워드를 포함하는 코드워드 중 적어도 한쪽을 탐지함으로써 화상 데이터 내의 이차원 코드 기호의 방향을 결정하고, 상기 방향을 고려하여 이차원 코드를 주사하는 것이 제안되어 있다.
또한, 상술한 이차원 코드는 일차원 코드보다도 표현할 수 있는 정보량이 많지만, 그래도 그 정보량에는 한계가 있다. 이 때문에, 상기 JIS 규격의 p22 5.3.2.7의 「연결 모드」 항(項)에 기재되어 있는 바와 같이, 대량의 정보를 QR 코드로 표현할 경우에는, 그 정보를 복수의 QR 코드로 분할하여 표현하고 있다. 종래, 이 연결 모드로 QR 코드를 복호할 경우에는, 심벌을 1개씩 판독하여 복수의 QR 코드를 차례로 복호하고 있었다.
그러나, 종래의 검출 방법에서는, 판독한 화상 중에 노이즈가 포함되는 경우에, 노이즈를 위치 검출 요소 패턴으로 오인식하거나 하여 위치 검출 패턴이 오검 출되고, QR 코드를 정확하게 검출할 수 없다. 예를 들어 「回(회)」라는 한자가 위치 검출 요소 패턴으로 오인식되는 경우이다.
또한, 심벌의 광학적 판독에 플랫베드(flat-bed) 스캐너 등의 범용 스캐너를 사용할 수 있으면, QR 코드의 편리성은 현저하게 향상된다. 그러나, 정보가 복수의 QR 코드로 표현되어 있는 경우에는, 범용 스캐너로 주사하여 얻어진 화상에는 복수의 심벌이 포함되어 개개의 QR 코드를 정확하고 신속하게 검출하는 것이 어렵다.
즉, 복수의 심벌을 포함하는 화상으로부터는 다수의 위치 검출 요소 패턴이 검출된다. 예를 들어 QR 코드가 1개이면, 위치 검출 요소 패턴은 3개이지만, QR 코드가 4개 있으면, 위치 검출 요소 패턴은 그 4배인 12개로 된다. 이 때문에, 도 4에 나타낸 바와 같이, 상이한 심벌에 포함되는 위치 검출 요소 패턴이 조합되어 위치 검출 패턴으로 오인식되어, QR 코드를 정확하게 검출하는 것이 어려워진다.
또한, 위치 검출 요소 패턴 전부의 조합을 고려함으로써, 오인식을 회피하는 것은 가능하다. 그러나, 이 경우에는 최적의 조합이 될 때까지 연산을 계속 반복하게 된다. 그 결과, 연산량이 증가하여 처리 속도가 지연되고, QR 코드를 신속하게 검출하는 것이 어려워진다.
또한, 1매의 원고에 형성된 복수의 이차원 코드를 판독하여 복호할 경우, 전용 바코드 리더에 의해 이차원 코드를 1개씩 단독으로 판독하여 각각 복호하는 방법과, 복합기 등에 의해 1매의 원고를 판독하여 얻어진 화상 데이터로부터 복수의 이차원 코드를 검출하여 복호하는 방법이 고려된다.
그러나, 종래의 기술에서는 복합기에 의해 1매의 원고에 형성된 복수의 QR 코드를 검출할 경우에는, 복수의 QR 코드의 위치 관계나, QR 코드 이외의 부분에서 QR 코드의 위치 결정 심벌과 유사한 주파수 분포를 갖는 부위의 존재에 기인하여 QR 코드를 오검출할 가능성이 높다.
본 발명은 상기 문제를 고려하여 이루어진 것으로서, 위치 검출 패턴의 오인식에 의한 이차원 코드의 오검출을 방지하여 이차원 코드를 포함하는 화상으로부터 이차원 코드를 정확하게 검출할 수 있는 이차원 코드의 검출 방법, 검출 장치, 및 검출 프로그램을 기억한 기억 매체를 제공한다.
또한, 복수의 이차원 코드를 포함하는 화상으로부터 개개의 이차원 코드를 정확하고 신속하게 검출할 수 있는 이차원 코드의 검출 방법, 검출 장치, 및 검출 프로그램을 기억한 기억 매체를 제공한다.
또한, 화상 데이터에 포함되는 복수의 이차원 코드를 정밀도 좋게 검출할 수 있는 이차원 코드의 검출 방법 및 검출 장치를 제공한다.
본 발명의 제 1 형태의 이차원 코드의 검출 방법은, 직각이등변삼각형의 각 정점에 대응하는 위치에 3개의 위치 검출 요소 패턴이 설치되고, 또한 상기 위치 검출 요소 패턴에 의해 정해지는 영역에 데이터 영역이 설치된 이차원 코드를 검출하는 방법으로서, 화상에 포함되는 복수의 위치 검출 요소 패턴을 검출하고, 검출된 위치 검출 요소 패턴의 중심점의 위치를 특정하며, 위치가 특정된 상기 중심점 중에서 직각이등변삼각형의 정점을 구성하는 3개의 중심점을 선택하고,
선택된 상기 중심점에 대응하는 상기 위치 검출 요소 패턴에 의해 정해지는 이차원 코드 영역 또는 그 주변 영역으로부터 이차원 코드로서의 특징을 추출하며, 이차원 코드로서의 상기 특징이 추출된 경우에는, 상기 이차원 코드 영역에 1개의 이차원 코드가 존재한다고 판정하는 것을 포함한다.
본 발명의 제 2 형태는, 직각이등변삼각형의 각 정점에 대응하는 위치에 3개의 위치 검출 요소 패턴이 설치되고, 또한 상기 위치 검출 요소 패턴에 의해 정해지는 영역에 데이터 영역이 설치된 이차원 코드를 검출하는 이차원 코드의 검출 장치로서, 화상에 포함되는 이차원 코드의 위치 검출 요소 패턴을 검출하고, 검출된 위치 검출 요소 패턴의 중심점의 위치를 특정하는 기준 위치 특정부와, 상기 기준 위치 특정부에 의해 위치가 특정된 상기 중심점 중에서 직각이등변삼각형의 정점을 구성하는 3개의 중심점을 선택하며, 선택된 상기 중심점에 대응하는 위치 검출 요소 패턴에 의해 정해지는 이차원 코드 영역 및 그 주변 영역으로부터 이차원 코드로서의 특징을 추출하는 특징 추출부와, 상기 특징 추출부에 의해 이차원 코드로서의 상기 특징이 추출된 경우에는, 상기 이차원 코드 영역에 1개의 이차원 코드가 존재한다고 판정하는 판정부를 구비하는 이차원 코드의 검출 장치를 제공한다.
본 발명의 제 3 형태는, 컴퓨터에 의해, 직각이등변삼각형의 각 정점에 대응하는 위치에 3개의 위치 검출 요소 패턴이 설치되고, 또한 상기 위치 검출 요소 패턴에 의해 정해지는 영역에 데이터 영역이 설치된 이차원 코드를 검출하는 프로그램을 기억한 기억 매체로서, 상기 프로그램이 컴퓨터에, 이치화된 화상에 포함되는 복수의 위치 검출 요소 패턴을 검출하고, 검출된 위치 검출 요소 패턴의 중심점의 위치를 특정하며, 위치가 특정된 상기 중심점 중에서 직각이등변삼각형의 정점을 구성하는 3개의 중심점을 선택하고, 선택된 상기 중심점에 대응하는 위치 검출 요소 패턴에 의해 정해지는 이차원 코드 영역 또는 그 주변 영역으로부터 이차원 코드로서의 특징을 추출하며, 이차원 코드로서의 상기 특징이 추출된 경우에는, 상기 이차원 코드 영역에 1개의 이차원 코드가 존재한다고 판정하는 것을 포함하는 이차원 코드의 검출 처리를 실행시키는 프로그램을 기억한 기억 매체를 제공한다.
본 발명의 제 4 형태는, 정사각형의 3코너에 배치되는 위치 요소 패턴의 명암 패턴을 미리 기억부에 기억시키고, 원고를 판독하여 얻어진 판독 화상 데이터에 의거하여, 상기 명암 패턴과 일치하는 모든 화상 영역을 특정하며, 특정한 모든 화상 영역 중, 중심을 선으로 이어 얻어지는 도형이 직각이등변삼각형으로 되는 3개의 화상 영역을 각각 이차원 코드의 위치 요소 패턴으로서, 상기 3개의 위치 요소 패턴에 의해 나타나는 영역을 이차원 코드로서 검출하는 것을 포함한다.
즉, 정사각형의 3개의 정점을 잇는 도형이 직각이등변삼각형으로 되는 것에 주목하고, 위치 요소 패턴의 중심을 이어 얻어지는 도형이 직각이등변삼각형으로 되는 위치 요소 패턴을 1개의 이차원 코드를 구성하는 위치 요소 패턴으로서 이차원 코드를 검출한다. 그 때문에, 이차원 코드가 판독 화상 데이터에 복수 포함되어 있는 경우일지라도, 복수의 이차원 코드를 정밀도 좋게 검출할 수 있다.
본 형태는 상기 중심을 선으로 이어 얻어지는 직각이등변삼각형의 크기를 미리 설정하는 것을 더 포함하고 있을 수도 있다.
또한, 상기 중심을 선으로 이어 얻어지는 직각이등변삼각형의 판독 화상 데 이터의 천지(天地) 방향에 대한 각도를 미리 설정하는 것을 더 포함하고 있을 수도 있다.
또한, 상기 판독 화상 데이터에서 이차원 코드가 존재하는 영역을 미리 설정하는 것을 더 포함하고 있을 수도 있다.
상기 판독 화상 데이터에 포함되는 이차원 코드의 개수를 미리 설정하는 것을 더 포함하고 있을 수도 있다.
본 발명의 제 5 형태는, 정사각형의 3코너에 배치되는 위치 요소 패턴의 명암 패턴을 미리 기억시킨 기억부와, 원고를 판독하여 얻어진 판독 화상 데이터에 의거하여, 상기 명암 패턴과 일치하는 모든 화상 영역을 특정하는 위치 요소 패턴 특정부와, 상기 특정부에 의해 특정된 상기 화상 영역 중, 중심을 선으로 이어 얻어지는 도형이 직각이등변삼각형으로 되는 3개의 화상 영역을 각각 이차원 코드의 위치 요소 패턴으로서, 상기 3개의 위치 요소 패턴에 의해 나타나는 영역을 이차원 코드로서 검출하는 검출부를 구비하고 있다.
본 형태의 장치, 제 4 형태의 방법과 동일하게 작용하기 때문에, 마찬가지로 화상 데이터에 포함되는 복수의 이차원 코드를 정밀도 좋게 검출할 수 있다.
본 발명에 의하면, 3개의 위치 검출 요소 패턴의 중심점에 의해 직각이등변삼각형의 정점이 구성된다는 조건에 부가하여, 3개의 위치 검출 요소 패턴을 포함하는 이차원 코드 영역 및 그 주변 영역으로부터 이차원 코드로서의 특징이 추출되는 것을 조건으로서, 이차원 코드 영역에 1개의 이차원 코드가 존재한다고 판정한다. 그 때문에, 위치 검출 패턴의 오인식에 의한 이차원 코드의 오검출을 방지하 여 이차원 코드를 포함하는 화상으로부터 이차원 코드를 정확하게 검출할 수 있다. 또한, 복수의 이차원 코드를 포함하는 화상의 경우일지라도, 이러한 화상으로부터 개개의 이차원 코드를 정확하고 신속하게 검출할 수 있다.
또한, 정사각형의 3코너에 배치되는 위치 요소 패턴의 명암 패턴을 미리 기억부에 기억시켜 두고, 원고를 판독하여 얻어진 판독 화상 데이터에 의거하여, 상기 명암 패턴과 일치하는 모든 화상 영역을 특정한다. 특정한 모든 화상 영역 중, 중심을 선으로 이어 얻어지는 도형이 직각이등변삼각형으로 되는 3개의 화상 영역을 각각 이차원 코드의 위치 요소 패턴으로서, 상기 3개의 위치 요소 패턴에 의해 나타나는 영역을 이차원 코드로서 검출한다. 그 때문에, 화상 데이터에 포함되는 복수의 이차원 코드를 정밀도 좋게 검출할 수 있다는 우수한 효과를 갖는다.
이하, 도면을 참조하여 본 발명의 예시적인 실시예를 상세하게 설명한다. 여기서는, 이차원 코드로서 「QR 코드」를 사용하는 예에 대해서 설명한다.
(제 1 실시예)
도 1은 본 실시예에 따른 QR 코드의 처리 장치의 개략 구성을 나타낸 블록도이다. 이 장치는 화상 데이터로부터의 QR 코드 검출에 본 발명을 적용한 것이다. 도 1에 나타낸 바와 같이, 이 처리 장치는 원고 화상으로부터 래스터(raster) 화상 데이터를 취득하는 화상 입력 장치(10)를 구비하고 있다. 화상 입력 장치(10)는 종이 원고로부터 원고 화상을 판독하는 스캐너나 디지털 카메라 등에 의해 구성되어 있다. 종이 원고에 복수의 QR 코드가 첨부되어 있는 경우에는, 화상 입력 장치(10)는 복수의 QR 코드를 포함하는 래스터 화상 데이터를 취득한다.
또한, 처리 장치는 화상 입력 장치(10)에 의해 취득된 래스터 화상 데이터를 유지하는 동시에 작업 영역으로서 기능하는 메모리(12)와, 프로그램을 판독하여 각종 처리를 실행하는 CPU(14)와, QR 코드 검출 처리 및 복호 처리를 실행하는 프로그램 등을 기억한 ROM(16)과, 네트워크 경유로 다른 컴퓨터에 접속하기 위한 외부 인터페이스(18)와, 프린터 등의 화상 출력 장치(20)와, QR 코드를 복호하여 얻어진 데이터에 관련되는 문서 데이터를 축적한 데이터베이스(22)를 구비하고 있다.
이들 화상 입력 장치(10), 메모리(12), CPU(14), ROM(16), 외부 인터페이스(18), 화상 출력 장치(20), 및 데이터베이스(22)는 데이터 버스(24)에 의해 서로 접속되어 있다.
다음으로, 상기 처리 장치로 복수의 QR 코드를 포함하는 래스터 화상 데이터를 취득하고, 복수의 QR 코드의 각각을 복호하는 순서에 대해서 설명한다. 도 2는 CPU(14)에 의해 실행되는 처리 루틴(routine)을 나타낸 플로차트이다.
우선 스텝 100에서, 화상 입력 장치(10)로부터 래스터 화상 데이터를 취득하여 메모리(12)에 유지한다. 다음 스텝 102에서, 메모리(12) 상에서 그 화상 데이터를 이치화한다. 이치화 방식은 임계값을 사용한 단순 이치화이어도 되고, 그 이외의 이치화 방식이어도 된다. 다음 스텝 104에서, 이치화된 래스터 화상 데이터로부터 QR 코드의 위치 검출 요소 패턴의 중심점의 좌표(이하, 「중심 좌표」라고 하는 경우가 있음)를 전부 검출하고, 검출한 중심점의 좌표를 리스트화하여 메모리(12)에 유지한다. 검출 방법으로서는, 예를 들어 JIS 규격(JIS-X-0510)에 기재된 기존의 방법을 사용할 수 있다.
다음으로, 스텝 106에서 동일한 심벌에 포함되는 3개의 위치 검출 요소 패턴의 조합을 검출하는 「조합 검출 처리」를 실행한다. 스텝 104에서, 위치 검출 요소 패턴의 중심점의 좌표가 검출되어 리스트화되어 있다. 리스트화 단계에서는, 어느 3개의 조합이 동일한 심벌에 포함되는지 불분명하다. 이 리스트 중에서 동일한 심벌에 포함되는 3개의 위치 검출 요소 패턴의 조합을 검출함으로써, 각 심벌의 위치 검출 패턴의 위치가 구해지고, QR 코드가 검출된다.
여기서, 「조합 검출 처리」의 개요를 간단하게 설명한다. 도 10은 QR 코드의 심벌 구조를 나타낸 도면이다. 도 10에 나타낸 바와 같이, QR 코드의 심벌(30)은 3개의 위치 검출 요소 패턴(32A, 32B, 32C)을 갖고 있다. 이들 위치 검출 요소 패턴(32A, 32B, 32C)의 중심점 a, b, c는 도시한 바와 같이, 각 중심점을 정점으로 하는 직각이등변삼각형(36)을 구성한다. 또한, 심벌(30)의 4변의 주위에는 아무것도 표시하지 않는 여백 영역(이하, 「콰이어트 존」이라고 함)(34)이 설치되어 있다. 콰이어트 존(34)의 외주(外周)(34A)를 점선으로 도시한다. JIS 규격에 의하면, 콰이어트 존(34)의 폭은 4모듈로 규정되어 있다. 또한, 모듈이란 QR 코드에서 1비트의 정보를 표시하는 단위 정사각형이다.
본 실시예에서는, 상술한 심벌의 특징을 이용하여 조합을 검출한다. 구체적으로는, 직각이등변삼각형을 구성하는 3개의 위치 검출 요소 패턴의 중심점의 좌표의 조합을 검출하고, 그 3개의 좌표 주변에 콰이어트 존이 존재하는지의 여부를 판정한다. 그리고, 콰이어트 존이 있을 경우에는, 동일한 심벌에 포함되는 3개의 위치 검출 요소 패턴의 조합이라고 판정할 수 있다. 또한, 조합 검출 처리의 상세에 대해서는 후술한다.
스텝 106에서 위치 검출 요소 패턴의 조합이 전부 검출되면, 다음으로 그 중에서 1세트의 조합을 선택하여, 그 조합에 따른 QR 코드를 복호한다. 즉, 우선 스텝 108에서, 1세트의 조합을 선택하여 위치 검출 요소 패턴의 중심점의 좌표로부터 심벌의 회전 각도를 연산한다. 연산한 회전 각도에 의거하여 심벌의 방향을 보정하고, 기준 좌표에 대하여 QR 코드가 정립된 상태로 한다. 다음 스텝 110에서, 방향이 보정된 심벌을 잘라내고(트리밍), 메모리(12)에 유지한다. 다음 스텝 112에서, 심벌의 부호화 영역을 복호한다. 복호 방법으로서는, 예를 들어 상기 JIS 규격에 기재된 기존의 방법을 사용할 수 있다.
다음으로, 스텝 114에서 검출된 모든 조합에 대해서 QR 코드를 복호했는지의 여부를 판단한다. 여기서, 긍정 판단의 경우는 루틴을 종료하며, 부정 판단의 경우는 스텝 108로 돌아가서 다른 1세트의 조합을 선택하고, 스텝 108 내지 스텝 112의 처리를 반복한다. 즉, 조합 검출의 결과, 복수의 조합이 검출된 경우에는, 모든 조합에 대해서 회전 보정, 트리밍, 복호 처리를 행한다.
또한, 상기 처리 장치에서는, 복호된 데이터에 의거하여 다양한 처리를 행할 수 있다. 예를 들어 복호된 데이터가 데이터베이스(22)에 축적된 문서를 식별하는 ID 번호(이하, 「문서 ID」라고 함)인 경우에는, 이 문서 ID를 검색 키로서 데이터베이스(22)를 검색하고, 데이터베이스(22)로부터 문서 데이터 본체를 취득할 수 있다. 그리고, 취득한 문서 데이터를 화상 출력 장치(22)를 사용하여 인쇄할 수 있다. 또한, 얻어진 문서 데이터를 외부 인터페이스(18)를 경유하여 다른 컴퓨터에 전송할 수도 있다.
여기서, 도 2의 스텝 106에서 실행되는 「조합 검출 처리」에 대해서 상세하게 설명한다. 상술한 바와 같이, 이 처리는 위치 검출 요소 패턴의 중심점의 좌표가 모두 검출되어 리스트화된 후에 실행된다. 1개의 QR 코드의 심벌에는 3개의 위치 검출 요소 패턴이 포함되기 때문에, N개의 QR 코드가 있는 경우에는, 3N개의 좌표가 리스트화되어 있다.
도 5는 조합 검출 처리의 서브루틴을 나타낸 플로차트이다. 우선 스텝 200에서, 메모리(12)에 유지된 중심점의 좌표 리스트를 참조한다. 위치 검출 패턴을 구성하는 3개의 위치 검출 요소 패턴의 중심점을 A, B, C라고 하고, 스텝 202 내지 스텝 206에서 중심점 A, B, C에 대응시켜 좌표 리스트로부터 3개의 좌표를 선택한다.
3N개로부터 3개가 모두 조합되도록 조합시킨다. 조합 수는 하기식에 나타낸 바와 같이, 3N으로부터 3을 취출(取出)하는 조합(=콤비네이션)의 계산에 의해 구해진다.
[수식 1]
Figure 112006067595710-PAT00001
예를 들어 QR 코드가 2개이면, 위치 검출 요소 패턴의 수는 2N=6개가 되고, 6개로부터 3개를 선택하는 조합은 20가지로 된다. QR 코드가 10개이면, 조합은 4060가지로 된다.
다음으로, 스텝 208에서 「직각이등변삼각형의 판정 처리」를 실행한다. 이러한 판정 처리에서는, 선택된 3개의 좌표에서 특정되는 중심점 A, B, C가 직각이등변삼각형의 각 정점을 구성하는지의 여부를 판정한다. 긍정 판정(True)일 경우에는, 중심점 A, B, C가 직각이등변삼각형의 각 정점을 구성하고, 3개의 위치 검출 요소 패턴이 동일한 심벌에 포함될 가능성이 있기 때문에, 다음 스텝 210의 「콰이어트 존 유무의 판정 처리」로 진행된다.
스텝 210에서는, 선택된 3개의 좌표로부터 QR 코드의 심벌이 존재할 가능성이 있는 영역(후보 영역)을 상정(想定)하고, 후보 영역의 주위에 콰이어트 존이 존재하는지의 여부를 판정한다. 긍정 판정(True)일 경우에는, 후보 영역의 주위에 콰이어트 존이 존재하고, 후보 영역에 심벌이 존재할 가능성이 매우 높다. 그 때문에, 스텝 212에서 선택된 3개의 좌표를 위치 검출 패턴의 위치를 나타내는 좌표 그룹으로서 리스트화하여 메모리(12)에 저장한다. 즉, 선택된 3개의 좌표에 대응한 위치 검출 요소 패턴이 동일한 심벌에 포함되어 위치 검출 패턴을 구성한다고 판단하여 상기 좌표의 조합을 메모리(12)에 저장하는 것이다.
다양한 요인에 의해 위치 검출 패턴의 오인식이 발생한다. 예를 들어 래스터 화상 데이터에 포함되는 노이즈가 위치 검출 요소 패턴으로 인식되는 경우도 있다. 또한, 중심점 A, B, C가 직각이등변삼각형의 각 정점을 구성하고 있어도 상이한 심벌에 포함되는 위치 검출 요소 패턴이 조합되어 있는 경우도 있다. 그러나, QR 코드의 심벌은 그 4변의 주위에 콰이어트 존이 설치된다는 특징을 갖고 있다. 그 때문에, 본 실시예와 같이, 후보 영역의 주위에 콰이어트 존이 존재하는지의 여 부를 판정함으로써, 상이한 심벌에 포함되는 위치 검출 요소 패턴이 조합되어 위치 검출 패턴으로 오인식되는 것을 방지할 수 있다.
또한, 동일한 심벌에 포함되는 위치 검출 요소 패턴의 조합(3개 좌표의 조합)이 차례로 특정된다. 그 때문에, 연산을 계속 반복할 필요가 없어 QR 코드 검출 처리가 간단해지고, 모든 조합이 특정될 때까지의 시간이 단축된다.
한편, 스텝 208 또는 스텝 210에서 부정 판정(False)의 경우에는, 스텝 214 내지 스텝 218에서 모든 조합이 선택되었는지의 여부를 검증하고, 모든 조합이 선택되어 있으면 루틴을 종료한다. 여기서, 선택되어 있지 않은 조합이 있을 경우에는, 스텝 202 내지 스텝 206으로 돌아가서 중심점 A, B, C에 대응시켜 좌표 리스트로부터 3개의 좌표가 상이한 조합을 선택한다. 그리고, 새로운 조합에 대해서 스텝 208 내지 스텝 212의 처리를 반복한다.
여기서, 도 5의 스텝 208에서 실행되는 「직각이등변삼각형의 판정 처리」에 대해서 상세하게 설명한다. 도 7은 직각이등변삼각형의 판정 처리의 루틴을 나타낸 플로차트이다.
우선 스텝 300에서, 선택된 3개의 좌표를 취득하고, 스텝 302에서 중심점 A가 직각이등변삼각형의 직각 꼭짓점으로 될 수 있는지의 여부를 판정한다. 스텝 302에서 긍정 판정(True)일 경우에는, 중심점 A, B, C가 직각이등변삼각형의 각 정점을 구성한다고(True) 판정한다. 한편, 스텝 302에서 부정 판정(False)의 경우에는, 다음 스텝 304로 진행되고, 중심점 B가 직각이등변삼각형의 직각 꼭짓점으로 될 수 있는지의 여부를 판정한다.
스텝 304에서 긍정 판정(True)일 경우에는, 중심점 A, B, C가 직각이등변삼각형의 각 정점을 구성한다고(True) 판정한다. 한편, 스텝 304에서 부정 판정(False)의 경우에는, 다음 스텝 306으로 진행되고, 중심점 C가 직각이등변삼각형의 직각 꼭짓점으로 될 수 있는지의 여부를 판정한다. 스텝 306에서 긍정 판정(True)일 경우에는, 중심점 A, B, C가 직각이등변삼각형의 각 정점을 구성한다고(True) 판정한다. 한편, 스텝 306에서 부정 판정(False)의 경우에는, 중심점 A, B, C가 직각이등변삼각형의 각 정점을 구성하지 않는다고(False) 판정한다.
여기서, 도 7의 스텝 302 내지 306에서 실행되는 「직각 꼭짓점의 판정 처리」에 대해서 상세하게 설명한다. 도 6은 직각이등변삼각형의 기하학적인 성립 조건을 설명하기 위한 도면이다. 또한, 도 8은 도 7의 스텝 302에서 실행되는 직각 꼭짓점의 판정 처리의 루틴을 나타낸 플로차트이다.
도 6에 나타낸 바와 같이, 점 A, B, C를 각 정점으로 하는 삼각형이 점 A를 직각 꼭짓점으로 하는 직각이등변삼각형이라고 하기 위해서는, 선분(線分) AB와 선분 AC가 이루는 각도 θ가 90°이며, 또한 선분 AB와 선분 AC의 길이가 동일해야만 한다.
따라서, 우선 도 8의 스텝 400에서, 선택된 3개의 좌표를 취득한다. 스텝 402에서, 취득한 좌표로부터 선분 AB와 선분 AC가 이루는 각도 θ를 연산한다. 스텝 404에서, 연산 결과에 의거하여 각도 θ가 90°인지의 여부를 판단한다. 즉, 점 A로부터 점 B를 향하는 벡터(vector)와 점 A로부터 점 C를 향하는 벡터의 내적(內積)이 0(zero)로 되는지의 여부를 판단한다. 여기서, 부정 판단(False)일 경우 에는, 중심점 A를 직각 꼭짓점으로 하는 직각이등변삼각형이 아니라고(False) 판정할 수 있다. 한편, 스텝 404에서 긍정 판단(True)일 경우에는, 다음 스텝 406으로 진행된다.
스텝 406에서, 취득한 좌표로부터 선분 AB와 선분 AC의 길이를 각각 연산한다. 스텝 408에서, 연산 결과에 의거하여 선분 AB와 선분 AC의 길이가 동일한지의 여부를 판단한다. 여기서, 부정 판단(False)일 경우에는, 중심점 A를 직각 꼭짓점으로 하는 직각이등변삼각형이 아니라고(False) 판정할 수 있다. 한편, 스텝 408에서 긍정 판단(True)일 경우에는, 중심점 A를 직각 꼭짓점으로 하는 직각이등변삼각형이라고(True) 판정할 수 있다.
다음으로, 도 5의 스텝 210에서 실행되는 「여백 영역(콰이어트 존) 유무의 판정 처리」에 대해서 상세하게 설명한다. 도 11 및 도 18은 콰이어트 존 유무의 판정 방법을 설명하기 위한 도면이다.
도 11에 나타낸 바와 같이, QR 코드가 존재할 경우, 심벌(30)의 콰이어트 존(34)에 그어진 가상선(스캔 라인)(38) 위를 스캔하면, 이 스캔 라인(38)은 전부 화소값이 「백색」인 화소(이하, 「백색 화소」라고 함)에 의해 구성된다. 또한, 화소값이 「흑색」인 화소는 「흑색 화소」라고 한다. 또한, 도 11은 스캔 라인(38)을 도시한 것 이외에는, 도 10에 나타낸 QR 코드와 동일한 구성을 구비하고 있기 때문에, 동일한 구성 부분에는 동일한 부호를 첨부하여 설명을 생략한다.
본 실시예에서는, 도 18에 나타낸 바와 같이, 3개의 위치 검출 요소 패턴(42A, 42B, 42C)의 중심점을 A, B, C라고 하고, QR 코드의 심벌이 존재할 가능성이 있는 영역(후보 영역)(40)을 상정한다. 또한, 후보 영역(40)의 주위에 콰이어트 존이 존재한다고 가정하고, 콰이어트 존의 외주(44A)를 상정한다. 또한, 후보 영역(40)의 외주(40A)와 콰이어트 존의 외주(44A) 사이에 스캔 라인(48)을 설정한다.
이 스캔 라인(48) 위를 스캔한다. 즉, 메모리 위에 전개된 화상 데이터의 화소값을 차례로 취득한다. 스캔 라인(48)이 백색 화소에 의해 구성되어 있으면, 후보 영역(40)의 주위에 콰이어트 존이 존재한다고 판정할 수 있다. 즉, 심벌의 주위에 콰이어트 존이 존재한다는 QR 코드의 특징을 구비하고 있으며, 후보 영역(40)에 심벌이 존재할 가능성이 매우 높다.
스캔 라인(48)은 예를 들어 콰이어트 존의 중심선을 따라 설정할 수 있다. 즉, 외주(40A)와 외주(44A)의 중간 위치에 스캔 라인(48)을 설정할 수 있다. 스캔 라인(48)을 상기한 중심선을 따라 후보 영역(40)의 4변의 주위에 설정한 경우, 스캔 라인(48)에 의해 둘러싸인 영역의 형상은 후보 영역(40)과 동일한 정사각형으로 된다. 스캔 라인(48)의 기준으로 되는 것은 후보 영역(40)의 중심점 E로부터 중심점 A, B, C 방향으로 연장된 연장선상의 점 AS, BS, CS와, 점 AS, BS, CS와 함께 정사각형의 정점을 구성하는 점 DS이다. 점 DS의 좌표는 점 AS, BS, CS의 좌표로부터 산출된다.
도 12는 콰이어트 존이 존재한다고 판정되는 예를 나타낸 도면이다. 이 경우는, 중심점 A, B, C가 직각이등변삼각형(46)의 각 정점을 구성한다고 판정되고, 중심점 A, B, C의 좌표로부터 상정된 후보 영역의 주위에 스캔 라인(48)이 설정되 지만, 스캔 라인(48)이 백색 화소에 의해 구성되어 있기 때문에, 후보 영역의 주위에 콰이어트 존이 존재한다고 판정된다.
한편, 도 13은 중심점 A, B, C가 직각이등변삼각형(46)의 각 정점을 구성한다고 판정되었는데도 불구하고, 콰이어트 존이 존재하지 않는다고 판정되는 예를 나타낸 도면이다. 이렇게, 중심점 A, B, C의 전부가 동일한 심벌에 속하여 있지 않아도, 중심점 A, B, C가 직각이등변삼각형(46)의 각 정점을 구성하는 경우가 있다. 이 경우, 중심점 A, B, C의 좌표로부터 상정된 후보 영역의 주위에 스캔 라인(48)이 설정되면, 스캔 라인(48)은 백색 화소와 흑색 화소에 의해 구성되는 것으로 되어 후보 영역의 주위에 콰이어트 존은 존재하지 않는다고 판정된다.
도 14는 여백 영역(콰이어트 존) 유무의 판정 처리의 루틴을 나타낸 플로차트이다. 상술한 바와 같이, 콰이어트 존의 유무를 판정하는 포인트는 스캔 라인의 위치 결정 방법에 있다. 스캔 라인의 기준점의 좌표는 중심점 A, B, C의 좌표로부터 산출된다.
우선 스텝 500에서, 점 B와 점 C를 잇는 선분 BC의 중점(中点) E의 좌표를 연산한다(도 18 참조). 점 E는 점 A를 직각 꼭짓점으로 한 경우의 직각이등변삼각형의 긴 변의 중점이다. 또한, 점 E는 후보 영역(40)의 중심점이며, 후보 영역(40)에 심벌이 존재할 경우에는 QR 코드의 중심점이기도 한다. 점 B의 좌표를 (xb, yb)라고 하고, 점 C의 좌표를 (xc, yc)라고 하면, 점 E의 좌표 (xe, ye)는 하기식에 의해 나타난다.
[수식 2]
Figure 112006067595710-PAT00002
다음으로, 스텝 502 내지 스텝 506에서 스캔 라인의 기준점 AS, BS, CS의 좌표를 연산한다. 우선 스텝 502에서, 점 A의 좌표로부터 기준점 AS의 좌표를 연산하고, 스텝 504에서 점 B의 좌표로부터 기준점 BS의 좌표를 연산하며, 스텝 506에서 점 C의 좌표로부터 기준점 CS의 좌표를 연산한다. 또한, 연산 방법의 상세에 대해서는 후술한다. 그리고, 스텝 508에서 점 E를 중심으로 하여 기준점 AS와 점대칭인 위치에 있는 기준점 DS의 좌표를 연산한다. 하기의 벡터 연산에 의해 점 DS의 좌표를 구할 수 있다. 이것에 의해, 기준점 AS, BS, CS, DS를 잇는 스캔 라인이 설정된다.
[수식 3]
Figure 112006067595710-PAT00003
다음으로, 스텝 510에서 스캔 라인 위를 스캔한다. 예를 들어 기준점 AS→기준점 BS→기준점 DS→기준점 CS→기준점 AS의 순서로 스캔한다. 다음 스텝 512에 서, 스캔 라인 위의 총화소수 N, 백색 화소수 W, 및 총화소수에 대한 백색 화소수의 비율 W/N을 각각 연산한다. 계속되는 스텝 514에서, CPU(14)의 메모리 내에 미리 설정된 「임계값 TH」를 참조하고, 연산된 총화소수에 대한 백색 화소수의 비율 W/N이 「임계값 TH」보다도 큰지의 여부를 판단한다.
스텝 514에서 긍정 판단(OK)일 경우에는, 후보 영역의 주위에 콰이어트 존이 존재한다고(True) 판정하고, 루틴을 종료한다. 한편, 부정 판단(NG)일 경우에는, 후보 영역의 주위에 콰이어트 존은 존재하지 않는다고(False) 판정하고, 루틴을 종료한다.
도 15는 위치 검출 요소 패턴의 중심점 A와 스캔 라인의 기준점 AS의 위치 관계를 나타낸 도면이다. 도 15에 나타낸 바와 같이, QR 코드의 중심점 E와 위치 검출 요소 패턴(42A)의 중심점 A를 잇는 선분 EA를 QR 코드의 외측에 콰이어트 존의 외주(44A)까지 연장한다. 이 연장선은 위치 검출 요소 패턴(42A)의 정점 Ap를 통과하여 기준점 AS에서 스캔 라인(48)과 교차한다. 연장선상의 화소값을 보면, 중심점 A에서는 흑색이지만, 다음에 백색으로 반전하고, 다시 흑색으로 반전한다. 그리고, 위치 검출 요소 패턴(42A)의 정점 Ap에서 다시 백색으로 반전한다.
도 16은 위치 검출 요소 패턴의 구조를 나타낸 도면이다. 위치 검출 요소 패턴의 구조는 JIS 규격에 의해 규정되어 있고, 도시한 바와 같이, 3개의 동심(同心) 정사각형이 겹친 형상으로서, 흑색의 7×7 모듈(50), 백색의 5×5 모듈(52), 및 흑색의 3×3 모듈(54)로 구성되어 있다. 각 모듈 폭의 비율은 1:1:3:1:1이다.
여기서 모듈 크기를 1이라고 하면, 도 15에 나타낸 바와 같이, 선분 AAp의 길이는 3.5로 표현된다. 또한, 모듈 크기는 QR 코드를 묘화(描畵)할 때의 흑백 요소의 최소폭이다. 콰이어트 존의 폭 Wq는 4모듈 크기와 JIS 규격에 의해 규정되어 있다. 스캔 라인(48)을 콰이어트 존의 중심선을 따라 설정하면, 선분 ASAp의 길이는 2로 표현된다. 환언하면, 기준점 AS의 위치는 길이 3.5의 선분 AAp를 길이 2만큼 연장한 위치로 된다. 벡터 표기하면 도 17과 같이 된다. 따라서, 하기 벡터 연산에 의해 기준점 AS의 좌표를 구할 수 있다. 또한, 기준점 BS, 기준점 CS의 좌표도 동일한 방법으로 하여 구할 수 있다.
[수식 4]
Figure 112006067595710-PAT00004
이상 설명한 바와 같이, 본 실시예에서는, 선택한 3개의 위치 검출 요소 패턴의 중심점이 직각이등변삼각형의 각 정점을 구성한다는 조건에 부가하여, 3개의 중심점의 좌표로부터 상정되는 후보 영역의 주위에 콰이어트 존이 존재한다는 조건을 충족시킬 경우에, 선택한 3개의 좌표에 대응한 위치 검출 요소 패턴이 동일한 심벌에 포함되어 위치 검출 패턴을 구성한다고 판단한다. 그 때문에, 상이한 심벌에 포함되는 위치 검출 요소 패턴이 조합되어 QR 코드의 위치 검출 패턴으로 오인식되는 것을 방지할 수 있다. 이것에 의해, 복수의 QR 코드를 포함하는 화상으로 부터 개개의 QR 코드를 정확하게 검출할 수 있다.
또한, 본 실시예에서는 후보 영역의 주위에 콰이어트 존이 존재한다는 조건을 부가함으로써, 동일한 심벌에 포함되는 위치 검출 요소 패턴의 조합(3개 좌표의 조합)이 차례로 특정된다. 그 때문에, 연산을 계속 반복할 필요가 없어 QR 코드 검출 처리가 간단해지고, 모든 조합이 특정될 때까지의 시간이 단축된다. 이것에 의해, 복수의 QR 코드를 포함하는 화상으로부터 개개의 QR 코드를 정확하고 신속하게 검출할 수 있다.
또한, 상기 제 1 실시예에서는 콰이어트 존의 유무를 판정할 경우에, 연산된 총화소수에 대한 백색 화소수의 비율 W/N을 평가하는 「임계값 TH」로서, 미리 설정한 값을 사용하는 예에 대해서 설명했다. 그러나, 이것에 한정되지 않아, 원고 화상으로부터 판독한 QR 코드의 심벌 크기에 따라 임계값을 동적(動的)으로 설정할 수도 있다.
JIS 규격에서는 QR 코드의 형번(型番)이 커지면, QR 코드의 면적이 커지기 때문에, 콰이어트 존의 유무를 판정하기 위한 스캔 라인도 이에 따라 길어진다. 스캔 라인이 길어지면, 스캔 라인 위에 노이즈가 존재할 가능성도 많아진다. 이 경우에 「임계값 TH」를 작게 설정함으로써, 다소 노이즈가 있어도 콰이어트 존의 유무를 정확하게 판정하는 것이 가능해진다.
예를 들어 QR 코드의 중심점 E의 좌표로부터 위치 검출 요소 패턴의 중심점 A의 좌표까지의 거리를 모듈 수로 환산한 값 R에 의거하여 「임계값 TH」의 값을 결정한다. 도 19는 환산값 R의 산출 방법을 설명하기 위한 개념도이다. QR 코드 의 중심점 E의 좌표로부터 위치 검출 요소 패턴(42A)의 중심점 A의 좌표까지의 거리 L1과, 위치 검출 요소 패턴(42A)의 중심점 A로부터 위치 검출 요소 패턴(42A)의 정점 Ap까지의 거리 L2를 각각 산출한다. 또한, 거리 L1 및 거리 L2의 값은 모듈 수(= 화소수)로 환산된 값이다. 거리 L2의 값은 3.5모듈에 상당한다. 따라서, 거리 L1에 상당하는 모듈 수 R은 하기식으로부터 구할 수 있다.
[수식 5]
Figure 112006067595710-PAT00005
Figure 112006067595710-PAT00006
임계값 TH는 상기 환산값 R에 의거하여 하기 계산식으로부터 구할 수 있다. A, B는 정수이다. 이 계산식에 따라 임계값 TH를 구함으로써, QR 코드의 형번에 따라 최적인 임계값 TH를 설정하는 것이 가능해진다.
[수식 6]
Figure 112006067595710-PAT00007
또한, 상기 제 1 실시예에서는 스캔 라인을 후보 영역의 4변의 주위에 설정하는 예에 대해서 설명했다. 그러나, 도 20에 나타낸 바와 같이, 기준점 Cs, 기준점 As, 기준점 Bs를 잇는 스캔 라인(48)을 후보 영역(40)에 대하여 적어도 직각이등변삼각형의 짧은 변 측에 설정함으로써, 콰이어트 존의 유무를 판정하는 것이 가능해진다. 이 경우에는, 도 18에 나타낸 기준점 Ds의 좌표를 연산할 필요가 없어 져 스캔 라인의 설정이 용이해진다. 또한, 스캔 라인이 짧아짐으로써, 노이즈의 영향을 받기 어려워진다.
또한, 상기 제 1 실시예에서는 스캔 라인을 이용하여 콰이어트 존의 유무를 판정하는 예에 대해서 설명했다. 그러나, 도 21에 나타낸 바와 같이, 후보 영역(40)의 주위에 소정 범위의 스캔 영역(78)(사선부)을 설정하여 스캔 영역(78) 위를 스캔함으로써, 콰이어트 존의 유무를 판정하는 것도 가능하다.
또한, 상기 제 1 실시예에서는 직각이등변삼각형의 판정 처리 후에, 콰이어트 존 유무의 판정 처리를 행하는 예에 대해서 설명했다. 그러나, 처리 순서를 교체하여 콰이어트 존 유무의 판정 처리 후에, 직각이등변삼각형의 판정 처리를 행할 수도 있다.
또한, 상기 제 1 실시예에서는 위치 검출 패턴을 구성한다고 판단된 3개의 위치 검출 요소 패턴의 조합(3개 좌표의 조합)을 메모리에 저장하는 예에 대해서 설명했다. 그러나, 도 22에 나타낸 바와 같이, 3개 좌표의 조합을 메모리에 저장하는(도 5의 스텝 212) 대신에, 스텝 211에서 3개 좌표의 조합을 별도 메모리에 저장하여 관리하고, 스텝 213에서 메모리에 저장한 3개의 좌표를 최초의 리스트로부터 삭제하도록 루틴을 변경할 수도 있다. 이러한 처리 순서로 함으로써, 판정 회수를 삭감하여 처리량을 감소시키고, 처리 시간을 단축하는 것이 가능해진다. 또한, 스텝 211 및 스텝 213 이외에는 도 5에 나타낸 처리 순서와 동일하기 때문에, 동일한 순서에는 동일한 부호를 첨부하여 설명을 생략한다.
(제 2 실시예)
제 2 실시예에서는 위치 검출 요소 패턴의 중심점의 좌표를 검출하고, 리스트화하여 관리하는 제 1 실시예와는 다른 방법으로 중심점의 좌표를 관리한다. 도 23은 조합 검출 처리의 서브루틴을 나타낸 플로차트이다. 이 서브루틴은 도 2에 나타낸 루틴의 스텝 106에서 실행된다. 이것 이외의 점은 제 1 실시예에 따른 처리 순서와 동일하다.
도 23에 나타낸 조합 검출 처리는 위치 검출 요소 패턴의 중심점의 좌표가 전부 검출되어 리스트화된 후에 실행된다. 1개의 QR 코드의 심벌에는 3개의 위치 검출 요소 패턴이 포함된다. 그 때문에, N개의 QR 코드가 있는 경우에는, 3N개의 위치 검출 요소 패턴의 중심점의 좌표가 리스트화되어 있다. 이 리스트화할 시에, 모든 좌표의 값은 유효하다고 설정한다.
우선 스텝 600에서, 메모리(12)에 유지된 중심점의 좌표 리스트를 참조한다. 다음으로, 위치 검출 패턴을 구성하는 3개의 위치 검출 요소 패턴의 중심점을 A, B, C라고 하고, 스텝 602 내지 스텝 612에서 중심점 A, B, C에 대응시켜 좌표 리스트로부터 3개의 좌표를 조합하여 선택한다.
스텝 602에서 좌표 리스트로부터 중심점 A에 대응하는 좌표를 선택하고, 스텝 604에서 선택된 좌표가 유효한지의 여부를 판단한다. 부정 판단(False)일 경우, 즉 선택된 좌표가 무효일 경우에는 스텝 622로 진행되고, 좌표 리스트로부터 유효인 좌표를 선택하여 중심점 A에 대응하는 좌표 데이터를 교체한다. 긍정 판단(True)일 경우, 즉 선택된 좌표가 유효일 경우에는 다음 스텝 606으로 진행된다.
다음으로, 스텝 606에서 좌표 리스트로부터 중심점 B에 대응하는 좌표를 선 택하고, 스텝 608에서 선택된 좌표가 유효한지의 여부를 판단한다. 부정 판단(False)일 경우, 즉 선택된 좌표가 무효일 경우에는 스텝 624로 진행되고, 좌표 리스트로부터 유효인 좌표를 선택하여 중심점 B에 대응하는 좌표 데이터를 교체한다. 긍정 판단(True)일 경우, 즉 선택된 좌표가 유효일 경우에는 다음 스텝 610으로 진행된다.
다음으로, 스텝 610에서 좌표 리스트로부터 중심점 C에 대응하는 좌표를 선택하고, 스텝 612에서 선택된 좌표가 유효한지의 여부를 판단한다. 부정 판단(False)일 경우, 즉 선택된 좌표가 무효일 경우에는 스텝 626으로 진행되고, 좌표 리스트로부터 유효인 좌표를 선택하여 중심점 C에 대응하는 좌표 데이터를 교체한다. 긍정 판단(True)일 경우, 즉 선택된 좌표가 유효일 경우에는 다음 스텝 614로 진행된다.
다음으로, 스텝 614에서 직각이등변삼각형의 판정 처리를 실행한다. 직각이등변삼각형의 판정 처리는 도 7에 나타낸 루틴에 따라 실행된다. 여기서 긍정 판정(True)일 경우에는, 중심점 A, B, C가 직각이등변삼각형의 각 정점을 구성하고, 3개의 위치 검출 요소 패턴이 동일한 심벌에 포함될 가능성이 있다. 그 때문에, 다음 스텝 616으로 진행되어 콰이어트 존 유무의 판정 처리를 실행한다. 콰이어트 존 유무의 판정 처리는 도 14에 나타낸 루틴에 따라 실행된다.
스텝 616에서 긍정 판정(True)일 경우에는, 스텝 618에서 선택된 3개 좌표의 조합을 위치 검출 패턴의 위치를 나타내는 좌표 그룹으로서 리스트화하고, 메모리(12)에 저장한다. 즉, 선택한 3개의 좌표에 대응한 위치 검출 요소 패턴이 동일한 심벌에 포함되어 위치 검출 패턴을 구성한다고 판단하고, 선택된 3개 좌표의 조합을 메모리(12)에 저장한다.
다음으로, 스텝 620에서, 좌표 리스트에서 저장한 좌표의 값은 무효라고 설정한다. 선택된 3개의 좌표에 대응한 위치 검출 요소 패턴은 이미 위치 검출 패턴을 구성한다고 판단되어 있다. 그 때문에, 다른 QR 코드의 위치 검출 패턴의 중심점의 좌표를 구성하는 것은 있을 수 없다. 이 때문에, 선택된 3개 좌표의 값은 무효라고 설정할 수 있다.
다음으로, 스텝 622에서 모든 조합이 선택되었는지의 여부를 검증하고, 모든 조합이 선택되어 있으면 루틴을 종료한다. 한편, 여기서, 선택되어 있지 않은 조합이 있는 경우에는 스텝 602로 돌아가고, 중심점 A, B, C에 대응시켜 좌표 리스트로부터 3개 좌표의 상이한 조합을 선택하고, 스텝 602 내지 스텝 620의 처리를 반복한다.
이상 설명한 바와 같이, 본 실시예에서는, 선택한 3개의 위치 검출 요소 패턴의 중심점이 직각이등변삼각형의 각 정점을 구성한다는 조건에 부가하여, 3개의 중심점의 좌표로부터 상정되는 후보 영역의 주위에 콰이어트 존이 존재한다는 조건을 충족시킬 경우에, 선택한 3개의 좌표에 대응한 위치 검출 요소 패턴이 동일한 심벌에 포함되어 위치 검출 패턴을 구성한다고 판단한다. 그 때문에, 제 1 실시예와 마찬가지로, 복수의 QR 코드를 포함하는 화상으로부터 개개의 QR 코드를 정확하고 신속하게 검출할 수 있다.
또한, 위치 검출 패턴을 구성한다고 판단된 중심점의 좌표의 값은 무효라고 설정하고, 그 이후의 판정에 사용하지 않도록 한다. 이것에 의해, 판정 회수를 삭감하여 처리량을 감소시키고, 처리 시간을 단축하는 것이 가능하다.
제 1 실시예의 처리는 단순하기 때문에, 하드웨어(HW)에서의 실장이나 DSP 등의 펌웨어(firmware)로의 실장에 적합하다. 이것에 대하여, 제 2 실시예의 처리는 복잡하지만, 처리량이 감소되기 때문에 소프트웨어(SW)로의 실장에 적합하다.
(제 3 실시예)
제 3 실시예에서는, QR 코드의 심벌이 존재하는 영역에서는 흑백 화소의 비율이 대략 동일해진다는 특징(이하, 「QR 코드같음」이라고 함)을 이용하여 위치 검출 요소 패턴의 조합을 검출한다. 도 24는 조합 검출 처리의 서브루틴을 나타낸 플로차트이다. 이 서브루틴은 도 2에 나타낸 루틴의 스텝 106에서 실행된다. 이것 이외의 점은 제 1 실시예에 따른 처리 순서와 동일하다.
이 서브루틴에서는, 도 24에 나타낸 바와 같이, 콰이어트 존 유무의 판정 처리(도 5의 스텝 210) 대신에, 스텝 209에서 QR 코드같음을 판정한다. 또한, 스텝 209 이외는 도 5에 나타낸 처리 순서와 동일하기 때문에, 동일한 순서에는 동일한 부호를 첨부하여 설명을 생략한다.
여기서, 도 24의 스텝 209에서 실행되는 「QR 코드같은 판정 처리」에 대해서 상세하게 설명한다. 도 25 및 도 26은 QR 코드같은 판정 방법을 설명하기 위한 도면이다.
도 25에 나타낸 바와 같이, QR 코드의 심벌(30)이 존재할 경우에, 3개의 위치 검출 요소 패턴(32A, 32B, 32C)의 중심점을 a, b, c라고 하면, 점 a, b, c를 각 각 정점으로 하는 정사각형(33)에 의해 둘러싸인 영역(35)은 심벌(30)의 내부에 존재한다. 도 26은 이 영역(35)을 잘라낸 도면이다. 도 25 및 도 26에서 알 수 있는 바와 같이, 정사각형(33)에 의해 둘러싸인 영역(35)에서는 백색 화소수와 흑색 화소수가 대략 동일해진다. 즉, 백색 화소수와 흑색 화소수의 비는 대략 1이며, 백색 화소수와 흑색 화소수의 차이는 대략 0이다. 또한, 흑백 반전 회수는 비교적 많아진다.
본 실시예에서는, 도 27에 나타낸 바와 같이, 3개의 위치 검출 요소 패턴(42A, 42B, 42C)의 중심점을 A, B, C라고 하고, 점 A, B, C를 각각 정점으로 하는 정사각형(43)에 의해 둘러싸인 영역(후보 영역)(40)을 상정한다. 이 후보 영역(40) 위를 스캔하여 백색 화소수와 흑색 화소수를 계산한 결과, 백색 화소수와 흑색 화소수의 비율이 미리 설정된 범위 내에 수용될 경우에는, 후보 영역(40)이 QR 코드같음을 갖고 있다고 판정할 수 있다. 즉, 심벌이 존재하는 영역에서는 흑백 화소의 비율이 대략 동일해진다는 QR 코드의 특징을 구비하고 있으며, 후보 영역(40)은 심벌 내에 존재할 가능성이 매우 높다.
구체적으로는, 하기식에 나타낸 바와 같이, 백색 화소수와 흑색 화소수의 차이가 「임계값 M」보다 작아졌을 경우에, QR 코드같다고 판정한다. 식 중에서, 「임계값 M」은 마진(margin)을 나타내는 정수이며, QR 코드의 심벌 크기에 따라 설정된다.
[수식 7]
Figure 112006067595710-PAT00008
한편, 도 28은 중심점 A, B, C가 직각이등변삼각형의 각 정점을 구성한다고 판정되었는데도 불구하고, QR 코드같지 않다고 판정되는 예를 나타낸 도면이다. 이렇게, 중심점 A, B, C의 전부가 동일한 심벌에 속하여 있지 않아도 중심점 A, B, C가 직각이등변삼각형의 각 정점을 구성하는 경우가 있다. 이 경우, 중심점 A, B, C의 좌표로부터 상정된 후보 영역(40)에서는 백색 화소수의 비율이 압도적으로 커져 QR 코드같지 않다고 판정된다.
도 29는 QR 코드같은 판정 처리의 루틴을 나타낸 플로차트이다. 이 루틴은 도 24의 스텝 209에서 실행된다. 우선 스텝 700에서, 후보 영역(40) 위의 백색 화소수를 카운트한다. 다음 스텝 702에서, 후보 영역(40) 위의 흑색 화소수를 카운트한다. 계속되는 스텝 704에서, 백색 화소수와 흑색 화소수의 차를 구하고, 그 차가 「임계값 M」보다 작은지의 여부를 판단한다. 긍정 판단(YES)일 경우에는, 후보 영역(40)은 QR 코드같다고(True) 판정하고, 루틴을 종료한다. 한편, 부정 판단(NO)일 경우에는, 후보 영역(40)은 QR 코드같지 않다고(False) 판정하고, 루틴을 종료한다.
이상 설명한 바와 같이, 본 실시예에서는 선택한 3개의 위치 검출 요소 패턴의 중심점이 직각이등변삼각형의 각 정점을 구성한다는 조건에 부가하여, 3개의 중심점의 좌표로부터 상정되는 판정 영역이 QR 코드같음을 갖고 있다는 조건을 충족 시킬 경우에, 선택한 3개의 좌표에 대응한 위치 검출 요소 패턴이 동일한 심벌에 포함되어 위치 검출 패턴을 구성한다고 판단한다. 그 때문에, 제 1 실시예와 마찬가지로, 복수의 QR 코드를 포함하는 화상으로부터 개개의 QR 코드를 정확하고 신속하게 검출할 수 있다.
또한, 상기 제 3 실시예에서는 「QR 코드같음」을 나타내는 수치적 지표로서 「흑백 화소의 비율」을 사용하는 예에 대해서 설명했다. 그러나, 도 9에 나타낸 바와 같이, 후보 영역(40)을 수평 방향(화살표 A로 나타냄) 또는 수직 방향(화살표 B로 나타냄)으로 스캔한 경우의 「흑백 반전 회수」를 「QR 코드같음」을 나타내는 수치적 지표로서 사용할 수도 있다. 또한, 「흑백 화소의 비율」과 「흑백 반전 회수」의 양쪽을 사용할 수도 있다.
도 30은 QR 코드같은 판정 처리의 다른 루틴을 나타낸 플로차트이다. 이 루틴은 도 24의 스텝 209에서 실행된다. 우선 스텝 800에서, 후보 영역(40)을 수평 방향으로 스캔한 경우의 흑백 반전 회수(백색으로부터 흑색으로 화소값이 변화되는 회수)를 카운트한다. 다음 스텝 802에서, 후보 영역(40)을 수평 방향으로 스캔한 경우의 흑백 반전 회수(흑색으로부터 백색으로 화소값이 변화되는 회수)를 카운트한다. 또한, 스텝 804에서 후보 영역(40)을 수직 방향으로 스캔한 경우의 흑백 반전 회수를 카운트한다. 다음 스텝 806에서, 후보 영역(40)을 수직 방향으로 스캔한 경우의 흑백 반전 회수를 카운트한다.
도 31은 수평 방향으로 스캔한 경우의 흑백 반전 회수의 카운트 예를 나타낸 도면이다. 이 예에서는, 백흑 반전 회수는 3회이며, 흑백 반전 회수는 3회이다.
다음으로, 스텝 808에서, 스텝 800 내지 스텝 806에서 구한 4개의 반전 회수의 합계치(합)를 구하고, 그 합이 미리 설정된 「임계값 TH」보다 큰지의 여부를 판단한다. 긍정 판단(YES)일 경우에는, 후보 영역(40)은 QR 코드같다고(True) 판정하고, 루틴을 종료한다. 한편, 부정 판단(NO)일 경우에는, 후보 영역(40)은 QR 코드같지 않다고(False) 판정하고, 루틴을 종료한다.
또한, 상기 제 3 실시예에서는 직각이등변삼각형의 판정 처리 후에, QR 코드같은 판정 처리를 행하는 예에 대해서 설명했다. 그러나, 처리 순서를 교체하여 QR 코드같은 판정 처리 후에, 직각이등변삼각형의 판정 처리를 행할 수도 있다.
또한, 상기 제 3 실시예에서는 「조합 검출 처리」에서 QR 코드같은 판정 처리를 행하는 예에 대해서 설명했다. 그러나, QR 코드같은 판정 처리와 함께 콰이어트 존 유무의 판정 처리를 행할 수도 있다. 복수의 조건을 조합시킴으로써, QR 코드 검출 정밀도가 향상된다.
(제 4 실시예)
도 32는 본 실시예에 따른 복합기(910)의 외관도이다.
도 32에 나타낸 바와 같이, 복합기(910)는 원고 판독부(912), 화상 형성부(914), 용지 수용부(916), 트레이(918) 및 조작부(920)를 구비하고 있다.
원고 판독부(912)는 원고 트레이(922)와, 자동 원고 이송 장치(924)와, 원고 배출 트레이(926)를 포함하여 구성되어 있다. 자동 원고 이송 장치(924)는 원고 트레이(922)에 세트된 원고를 1매씩 분리시켜 연속 배출하여 판독 위치에 반송하고, 그 후 상기 원고를 원고 배출 트레이(926)에 배출시킨다.
상기 판독 위치에는 광원(光源)이나 CCD 등을 포함하여 구성된 판독 기구가 구비되어 있다. 상기 판독 기구에서는, 판독 위치에 반송되어 온 원고로부터의 반사광을 적절하게 렌즈 등에 의해 결상(結像)시켜 CCD에 의해 판독한다.
복합기(910)는 원고 판독부(912)에 의한 원고 화상을 나타낸 화상 데이터의 취득, 통신부(도시 생략)에 의한 외부 장치와의 통신에 의한 데이터의 송수신, 화상 형성부(914)에 의한 화상 데이터에 의거하는 화상 형성 등을 실행할 수 있다. 또한, 스캔, 복사, 인쇄, 팩시밀리 송수신 등의 다양한 처리를 복합적으로 실행 가능하게 되어 있으며, 조작부(920)를 통하여 입력된 지시나, 통신에 의해 외부 장치로부터 입력된 지시에 의거하여 동작한다.
또한, 화상 형성부(914)에 의한 화상 형성 시에는, 용지 수용부(916)에 수용된 용지를 1매씩 화상 형성부(914)에 반송하고, 원고 판독부(912)에 의해 판독한 원고 화상의 화상 데이터나 외부와의 통신 등에 의해 입력된 화상 데이터 등에 의거하여 용지에 화상을 형성하고, 상기 화상이 형성된 용지를 트레이(918)에 배출한다.
도 33은 복합기(910)의 전기적인 구성의 개략을 나타낸 블록도이다. 도 33에 나타낸 바와 같이, 복합기(910)는 장치 전체의 동작을 제어하는 CPU(930)를 포함하여 구성되어 있다. 상기 CPU(930)에는 상기 조작부(920), 상기 판독 기구를 제어하여 디지털 화상 데이터를 취득하는 판독 제어부(932), 외부와의 통신을 제어하는 통신 제어부(934), 화상 형성부(914)를 제어하는 화상 형성 제어부(936) 및 메모리(938)가 접속되어 있다.
CPU(930)에서는 조작부(920)를 통하여 입력되는 지시에 의거하여, 판독 제어부(932), 통신 제어부(934) 및 화상 형성 제어부(936)를 제어한다.
그런데, 본 실시예에서는, 판독 제어부(932)에 의해 판독 기구를 통하여 얻어진 디지털 화상 데이터에 이차원 코드를 나타낸 화상이 포함될 경우, 상기 이차원 코드를 검출하여 복호하도록 하고 있다.
도 34의 (A) 및 (B)는 이차원 코드의 일례로서, QR 코드의 구성을 간략화하여 나타낸 설명도이다. 또한, 도 16과 동일한 구성 부분에는 동일한 부호를 첨부하여 설명을 생략한다. 도 34의 (A)에 나타낸 바와 같이, QR 코드(50)는 정사각형의 영역에 형성되고, 상기 영역의 4코너 중의 3코너에 위치 요소 패턴(52)이 배치되도록 되어 있다. 또한, 도 34의 (A) 및 (B)에서, QR 코드(50)의 위치 요소 패턴(52) 이외의 백색으로 칠하여 나타낸 영역은 복수의 셀로 분할되어 있다. 각 셀은 부호화된 정보에 의거하는 패턴이 배치되는 영역이며, 실제로는 예를 들어 흑색 또는 백색으로 전부 칠한 위치 요소 패턴(52)보다도 작은 복수의 셀이 적절히 배열된다.
도 34의 (A)에 나타낸 바와 같이, 1개의 QR 코드(50)를 구성하는 3개의 위치 요소 패턴(52A, 52B, 52C)은 QR 코드의 천지를 식별하기 위해 사용되어 있고, 위치 요소 패턴(52)이 배치되어 있지 않은 코너가 우측 아래로 오도록 하여 복호된다.
도 34의 (B)에 나타낸 바와 같이, 위치 요소 패턴(52)은 이중 정사각형으로서, 중심을 통과하는 직선(예를 들어 도 34의 (B)에 일점쇄선으로 나타낸 선)의 명암 패턴이 1:1:3:1:1의 비율로 암(暗)-명(明)-암-명-암으로 된다. 또한, 상기 비 율은 미리 메모리(938)의 소정 영역에 기억되어 있으며, 실제로 검출할 때에는, ± 0.5의 마진을 허용하고 있다.
CPU(938)에서는, 화상 데이터에 의거하여 화상 내에 위치 요소 패턴(52)의 명암 패턴을 통과하는 픽셀 선을 검출한 경우, 상기 위치 요소 패턴(52)의 외측 가장자리에 접하는 최초의 점 Q 및 최후의 점 R의 위치를 기억한다. 또한, 내측의 암의 정사각형을 횡단하는 모든 선이 인식될 때까지 상기 픽셀 선에 인접하는 픽셀 선에 대해서 점 Q 및 점 R을 차례로 기억하여 가고, 상기 위치 요소 패턴(52)의 중심 위치를 도출(導出)한다. 또한, 도출된 위치 요소 패턴(52)의 중심 위치의 화상 내에서의 좌표를 중심 좌표로서 메모리(938)에 기억시킨다.
이러한 순서에 의해, 화상 내의 모든 픽셀 선에 대해서 위치 요소 패턴(52)의 검출 및 중심 좌표의 기억을 행하고, 기억한 중심 좌표를 이용하여 QR 코드(50)의 개수나 위치를 특정한다. 또한, 중심 좌표는 1개의 QR 코드(50)에 대하여 3개 있기 때문에, 화상 내에 포함되는 QR 코드(50)의 수를 N개로 한 경우, 3N개의 중심 좌표가 검출되게 된다.
또한, QR 코드(50)의 위치가 특정되면, QR 코드(50)를 나타낸 화상에 의거하여 QR 코드(50)가 복호된다.
이하, 본 실시예의 작용을 설명한다.
도 36에는 CPU(930)에 의해 실행되는 QR 코드 검출 처리 프로그램의 처리의 흐름을 나타낸 플로차트이다. 이하, 도 36을 참조하여 본 실시예에 따른 QR 코드 검출 처리에 대해서 설명한다.
우선 스텝 1200에서는, 위치 요소 패턴 중심 좌표 리스트를 작성한다. 다음 스텝 1202에서는, X에 위치 요소 패턴 중심 좌표 리스트의 넘버 1의 중심 좌표를 세트한다. 다음 스텝 1204에서는, Y에 위치 요소 패턴 중심 좌표 리스트의 넘버 1의 중심 좌표를 세트한다. 그 후에 스텝 1206으로 이행하여 Z에 위치 요소 패턴 중심 좌표 리스트의 넘버 1의 중심 좌표를 세트한다.
도 35에 나타낸 바와 같이, 판독 화상 영역(E) 중에 4개의 QR 코드(50)가 포함되어 있는 경우, 적어도 12개의 위치 요소 패턴의 중심 좌표가 리스트 업된다. QR 코드(50)를 복호하기 위해서는, 이들 중심 좌표에 의거하여 각 QR 코드(50)의 위치 및 영역을 특정할 필요가 있다.
그 후, 스텝 1208로 이행하여 X, Y, Z가 동일한 QR 코드의 위치 요소 패턴(52)인지의 여부를 판정한다. 상기 판정이 긍정 판정으로 된 경우에는 스텝 1210으로 이행하여, 이 X, Y, Z 좌표의 조합을 메모리(938)의 소정 영역에 저장하고, 그 후에 스텝 1212로 이행한다.
한편, 스텝 1208에서 부정 판정으로 된 경우에는, 이 시점에서는 스텝 1210의 처리를 실행하지 않고 스텝 1212로 이행한다.
여기서, 1개의 QR 코드(50)를 구성하는 3개의 위치 요소 패턴(52A, 52B, 52C)을 선으로 이으면, 각(角) BAC가 직각인 직각이등변삼각형으로 된다(도 34의 (A)의 점선 및 도 35의 T1 참조). 한편, 상이한 QR 코드(50)의 위치 요소 패턴(52)을 포함하는 3개의 위치 요소 패턴(52)을 선으로 이으면, 도 35에 T2나 T3로 나타낸 바와 같이, 직각이등변삼각형으로는 되지 않는 경우가 많다.
그래서, 본 실시예에서는, 3개의 위치 요소 패턴을 선으로 이어 형성되는 삼각형이 직각이등변삼각형으로 되는 조합을 동일한 QR 코드를 구성하는 위치 요소 패턴(52)으로 간주하도록 하고 있다.
도 37에는 상기 스텝 1208에서 실행되는 직각이등변삼각형 판정 처리의 흐름이 나타나 있다. 이하, 도 37을 참조하여 본 실시예에 따른 직각이등변삼각형 판정 처리에 대해서 설명한다.
우선 스텝 1220에서는, 위치 요소 패턴(52A, 52B, 52C)을 선으로 이어 얻어지는 삼각형 ABC의 정점 좌표로서, 상기 X, Y, Z로 세트된 중심 좌표를 각각 대입한다. 다음 스텝 1222에서는, 직선 AB, 직선 AC가 이루는 각 θ를 도출하고, 그 후에 스텝 1224로 이행한다.
스텝 1224에서는, 이루는 각 θ가 대략 90도로 되어 있는지의 여부를 판정한다. 상기 판정이 긍정 판정으로 된 경우에는, 각 BAC가 직각인 직각이등변삼각형일 가능성이 있는 것으로 판단하여 스텝 1226으로 이행한다.
또한, 이루는 각 θ를 대략 90도로 한 것은 판독 정밀도에 기인하는 중심 좌표의 위치 어긋남이 상정되기 때문이며, 허용 범위는 적절히 설정할 수 있다.
한편, 스텝 1224에서 부정 판정으로 된 경우에는 각 BAC가 직각인 삼각형이 아니기 때문에 부정(False) 판정으로 되고, QR 코드 검출 처리의 스텝 1208(도 36 참조)이 부정 판정으로 된다.
스텝 1226에서는 거리 AB를 도출하고, 다음 스텝 1228에서는 거리 BC를 도출한다. 그 후에 스텝 1230으로 이행하여 거리 AB=BC인지의 여부를 판정한다. 상기 판정이 긍정 판정으로 된 경우는 이 삼각형 ABC는 각 BAC가 직각인 직각이등변삼각형이다. 따라서, 긍정(True) 판정으로 되며, QR 코드 검출 처리의 스텝 1208(도 36 참조)이 긍정 판정으로 된다.
도 36의 스텝 1212에서는, 이 시점에서 Z로서 세트되어 있는 중심 좌표의 다음에 리스트 업되어 있는 중심 좌표를 Z로서 다시 세트하고, 다시 스텝 1206으로 돌아간다. 이 스텝 1206 내지 스텝 1212의 처리는 12개의 중심 좌표가 리스트 업되어 있는 경우는 12회 반복된다.
그 후, 리스트 업되어 있는 모든 중심 좌표가 Z로서 세트되어 스텝 1206 내지 스텝 1212의 처리가 종료되면, 스텝 1214로 이행한다. 스텝 1214에서는, Y의 중심 좌표가 다음에 리스트 업되어 있는 값으로 변경된다. 다시 스텝 1204로 돌아가서, 모든 중심 좌표가 차례로 Z로서 세트되어 스텝 1206 내지 스텝 1212의 처리가 반복된다.
이렇게 하여 리스트 업되어 있는 모든 중심 좌표가 Y로서 세트되어 스텝 1204 내지 스텝 1214의 처리가 종료되면, 스텝 1216으로 이행한다. 스텝 1216에서는, X의 중심 좌표가 다음에 리스트 업되어 있는 값으로 변경된다. 다시 스텝 1202로 돌아가서, 모든 중심 좌표가 차례로 Y로서 세트되어 스텝 1204 내지 스텝 1214의 처리가 반복된다.
이것에 의해, 리스트 업되어 있는 모든 중심 좌표의 조합에 대해서 어떤 것이든 QR 코드의 위치 요소 패턴으로 가정되며, 동일한 QR 코드를 구성하는지의 여부가 판정되면, 본 QR 코드 검출 처리가 종료된다.
이것에 의해, 메모리(938)에 저장된 X, Y, Z의 조합에 의거하여 적절하게 QR 코드를 나타내는 화상 영역이 특정되며, 상기 화상 영역의 화상에 의거하여 복호 처리가 행해지게 된다.
이상 상세하게 설명한 바와 같이, 본 실시예에 의하면, 정사각형의 3코너에 배치되는 위치 요소 패턴의 명암 패턴을 미리 기억부에 기억시켜 둔다. 그리고, 원고를 판독하여 얻어진 판독 화상 데이터에 의거하여, 상기 명암 패턴과 일치하는 모든 화상 영역을 특정한다. 특정한 모든 화상 영역 중, 중심을 선으로 이어 얻어지는 도형이 직각이등변삼각형으로 되는 3개의 화상 영역을 각각 이차원 코드의 위치 요소 패턴으로서, 상기 3개의 위치 요소 패턴에 의해 나타나는 영역을 이차원 코드로서 검출한다. 그 때문에, 화상 데이터에 포함되는 복수의 이차원 코드를 정밀도 좋게 검출할 수 있다.
(제 5 실시예)
상기 제 4 실시예에서는, 위치 요소 패턴의 중심 좌표를 선으로 이어 형성되는 도형이 직각이등변삼각형으로 되는 모든 조합을 QR 코드의 위치 요소 패턴의 조합으로서 검출하는 형태에 대해서 설명했다. 본 제 5 실시예에서는, 미리 입력된 크기의 조건을 충족시키는 QR 코드의 위치 요소 패턴의 조합을 검출하는 형태에 대해서 설명한다.
본 제 5 실시예에서는, 검출하는 QR 코드 크기의 조건으로서, 판독 화상 영역의 짧은 변의 길이 e에 대한 QR 코드 영역의 1변의 길이의 비율이 N% 이하의 QR 코드인 것을 미리 입력 가능하며, 상기 조건에 의거하여 QR 코드 검출 처리를 실행 하게 되어 있다.
그래서, 본 제 5 실시예에서는, 상기 제 4 실시예에서의 직각이등변삼각형 판정 처리(도 37 참조) 대신에, QR 코드 크기의 조건을 고려한 직각이등변삼각형 판정 처리가 실행된다.
도 38에는 QR 코드 크기의 조건을 고려한 직각이등변삼각형 판정 처리의 흐름이 나타나 있다. 이하, 도 38을 참조하여, 본 제 5 실시예에 따른 직각이등변삼각형 판정 처리에 대해서 설명한다.
우선, 스텝 1240에서는, 위치 요소 패턴(52A, 52B, 52C)을 선으로 이어 얻어지는 삼각형 ABC의 정점 좌표에 상기 X, Y, Z로 세트된 중심 좌표를 각각 대입한다. 다음 스텝 1242에서는, 직선 AB, 직선 AC가 이루는 각 θ를 도출하고, 그 후에 스텝 1244로 이행한다.
스텝 1244에서는, 이루는 각 θ가 대략 90도로 되어 있는지의 여부를 판정한다. 상기 판정이 긍정 판정으로 된 경우에는, 각 BAC가 직각인 직각이등변삼각형일 가능성이 있는 것으로 판단하여 스텝 1246으로 이행한다.
또한, 이루는 각 θ를 대략 90도로 한 것은 판독 정밀도에 기인하는 중심 좌표의 위치 어긋남이 상정되기 때문이며, 허용 범위는 적절히 설정할 수 있다.
한편, 스텝 1244에서 부정 판정으로 된 경우는 각 BAC가 직각인 삼각형이 아니기 때문에 부정(False) 판정으로 되고, QR 코드 검출 처리의 스텝 1208(도 36 참조)이 부정 판정으로 된다.
스텝 1246에서는 거리 AB를 도출하고, 다음 스텝 1248에서는 도출한 거리 AB 가 임계값 m(e의 N%)보다도 작은지의 여부를 판정한다. 상기 판정이 긍정 판정으로 된 경우에는, 스텝 1250으로 이행하여 거리 BC를 도출하고, 그 후에 스텝 1252로 이행한다.
스텝 1252에서는, 도출한 거리 BC가 임계값 m(e의 N%)보다도 작은지의 여부를 판정한다. 상기 판정이 긍정 판정으로 된 경우는 스텝 1254로 이행하여 거리 AB=BC인지의 여부를 판정한다. 상기 판정이 긍정 판정으로 된 경우는 이 삼각형 ABC는 각 BAC가 직각이며, 또한 이등변이 임계값 m 이하의 직각이등변삼각형이다. 따라서, 긍정(True) 판정으로 되며, QR 코드 검출 처리의 스텝 1208(도 36 참조)이 긍정 판정으로 된다.
한편, 스텝 1248, 스텝 1252, 스텝 1254 중 어느 하나에서 부정 판정으로 된 경우는, 이 삼각형 ABC는 각 BAC가 직각이며, 또한 이등변이 임계값 m 이하의 직각이등변삼각형이 아니다. 따라서, 부정(False) 판정으로 되며, QR 코드 검출 처리의 스텝 1208(도 36 참조)이 부정 판정으로 된다.
이상 상세하게 설명한 바와 같이, 본 제 5 실시예에 의하면, 정사각형의 3코너에 배치되는 위치 요소 패턴의 명암 패턴을 미리 기억부에 기억시켜 둔다. 그리고, 원고를 판독하여 얻어진 판독 화상 데이터에 의거하여, 상기 명암 패턴과 일치하는 모든 화상 영역을 특정한다. 특정한 모든 화상 영역 중, 중심을 선으로 이어 얻어지는 도형이 직각이등변삼각형으로 되는 3개의 화상 영역을 각각 이차원 코드의 위치 요소 패턴으로서, 상기 3개의 위치 요소 패턴에 의해 나타나는 영역을 이차원 코드로서 검출한다. 그 때문에, 화상 데이터에 포함되는 복수의 이차원 코드 를 정밀도 좋게 검출할 수 있다.
또한, 본 제 5 실시예에 의하면, 상기 중심을 선으로 이어 얻어지는 직각이등변삼각형의 크기를 미리 설정하도록 한다. 그리고, 상기 크기의 조건을 충족시키는 직각이등변삼각형으로 되는 3개의 화상 영역을 각각 이차원 코드의 위치 요소 패턴으로 한다. 그 때문에, 화상 데이터에 포함되는 복수의 이차원 코드를 보다 고정밀도로 검출할 수 있다.
(제 6 실시예)
상기 제 5 실시예에서는, 미리 입력된 크기의 조건을 충족시키는 QR 코드의 위치 요소 패턴의 조합을 검출하는 형태에 대해서 설명했다. 본 제 6 실시예에서는, QR 코드의 크기 대신에, 판독 화상 영역에 대한 회전 각도가 소정 조건을 충족시키는 QR 코드의 위치 요소 패턴의 조합을 검출하는 형태에 대해서 설명한다.
여기서, 도 39의 (A) 내지 (D)에 나타낸 바와 같이, 원고가 판독 방향 R에 대하여 어느 방향으로 세트되는지에 의해, 얻어지는 판독 화상도 상이하다. 도 39의 (A)는 원고 화상의 천지와 판독 화상의 천지가 일치하는 경우이다. 이 경우, 판독 화상에 포함되는 QR 코드(50)는 회전되지 않은 상태로 판독되어 있는 것으로 된다.
또한, 도 39의 (B)에서는 원고가 판독 방향 R에 대하여 90도 회전하여 판독되어 있으며, 판독 화상에 포함되는 QR 코드(50)도 90도 회전하여 판독되어 있는 것으로 된다.
마찬가지로, 도 39의 (C)에서는 원고가 판독 방향 R에 대하여 180도 회전하 여 판독되어 있으며, 판독 화상에 포함되는 QR 코드(50)도 180도 회전하여 판독되어 있는 것으로 된다. 또한, 도 39의 (D)에서는 원고가 판독 방향 R에 대하여 -90도 회전하여 판독되어 있으며, 판독 화상에 포함되는 QR 코드(50)도 -90도 회전하여 판독되어 있는 것으로 된다.
이렇게, 통상 복합기(910)에서는, QR 코드(50)는 90도 단위로 회전하여 판독될 가능성은 있지만, 그 이외의 예를 들어 30도나 100도 등과 같은 회전 각도에 의해 판독되는 것은 생각하기 어렵다.
그래서, 본 제 6 실시예에서는, 판독 화상 영역(E)에 대한 회전 각도가 상기도 39의 (A) 내지 (D) 중 어느 하나인 위치 요소 패턴(52A, 52B, 52C)의 조합을 검출하도록 하고 있다.
도 40에는 QR 코드의 회전 각도의 조건을 고려한 직각이등변삼각형 판정 처리의 흐름이 나타나 있다. 이하, 도 40을 참조하여, 본 제 6 실시예에 따른 직각이등변삼각형 판정 처리에 대해서 설명한다.
우선 스텝 1260에서는, 위치 요소 패턴(52A, 52B, 52C)을 선으로 이어 얻어지는 삼각형 ABC의 정점 좌표에 상기 X, Y, Z로 세트된 중심 좌표를 각각 대입한다. 다음 스텝 1262에서는, 삼각형 ABC의 회전 각도 λ를 도출한다.
여기서, 회전 각도 λ는 도 39의 (A)에 나타낼 경우의 정점 A와 정점 B를 잇는 벡터 AB를 기준 벡터라고 하면, 상기 기준 벡터와 실제로 세트된 정점 좌표를 이용하여 도출한 벡터 AB가 이루는 각에 상당한다.
다음 스텝 1264에서는, QR 코드(50)가 취할 수 있는 회전 각도와 실제 회전 각도 λ의 각도차 P를 도출하고, 그 후에 스텝 1266으로 이행한다. 본 실시예에서는, QR 코드(50)가 취할 수 있는 회전 각도는 90도 단위로 설정하고 있기 때문에, 회전 각도 λ를 90도로 제산(除算)했을 때의 나머지를 각도차 P로 하고 있다. 예를 들어 회전 각도 λ가 120도일 경우, 각도차 P는 30도로 된다.
스텝 1266에서는, 각도차 P가 소정값 α(본 실시예에서는 3도)보다도 작은지의 여부를 판정한다. 상기 판정이 긍정 판정으로 된 경우에는, 스텝 1268로 이행한다. 또한, 소정값 α는 원고의 판독 방향에 대한 어긋남을 고려하여 자동 원고 이송 장치(924) 등의 정밀도나, 일반적으로 사용자가 판독 위치에 원고를 세트할 경우에 발생하는 어긋남 등에 따라 설정 가능한 값이다. 소정값 α에는 실제 기기를 이용한 실험이나 실제 기기의 사양에 의거하는 컴퓨터 시뮬레이션 등에 의해 얻어진 값을 적용할 수 있다.
한편, 스텝 1266에서 부정 판정으로 된 경우에는, 삼각형 ABC의 정점의 좌표로서 세트된 좌표가 동일한 QR 코드(50)의 위치 요소 패턴(52A, 52B, 52C)은 아닌 것으로 판단하여 부정(False) 판정으로 되고, QR 코드 검출 처리의 스텝 1208(도 36 참조)이 부정 판정으로 된다.
즉, 우선 회전 각도가 조건을 충족시킬 것인지의 여부를 판정하고, 상세하게 삼각형인지의 여부를 판정하는 처리를 실행하는 정점 A, B, C의 조합을 적게 하고 있다. 그 때문에, 처리 시간을 단축하여 효율적으로 QR 코드 검출을 실행할 수 있다.
스텝 1268에서는, 직선 AB, 직선 AC가 이루는 각 θ를 도출하고, 그 후에 스 텝 1270으로 이행한다.
스텝 1270에서는, 이루는 각 θ가 대략 90도로 되어 있는지의 여부를 판정한다. 상기 판정이 긍정 판정으로 된 경우에는, 각 BAC가 직각인 직각이등변삼각형일 가능성이 있는 것으로 판단하여 스텝 1272로 이행한다.
또한, 이루는 각 θ를 대략 90도로 한 것은 판독 정밀도에 기인하는 중심 좌표의 위치 어긋남이 상정되기 때문이며, 허용 범위는 적절히 설정할 수 있다.
한편, 스텝 1270에서 부정 판정으로 된 경우는 각 BAC가 직각인 삼각형이 아니다. 따라서, 부정(False) 판정으로 되며, QR 코드 검출 처리의 스텝 1208(도 36 참조)이 부정 판정으로 된다.
스텝 1272에서는 거리 AB를 도출하고, 다음 스텝 1274에서는 거리 BC를 도출하며, 그 후에 스텝 1276으로 이행한다.
스텝 1276에서는, 거리 AB=BC인지의 여부를 판정한다. 상기 판정이 긍정 판정으로 된 경우는, 이 삼각형 ABC는 각 BAC가 직각인 직각이등변삼각형이다. 따라서, 긍정(True) 판정으로 되며, QR 코드 검출 처리의 스텝 1208(도 36 참조)이 긍정 판정으로 된다.
한편, 스텝 1276에서 부정 판정으로 된 경우는, 이 삼각형 ABC는 각 BAC가 직각이지만, 직각이등변삼각형은 아니다. 따라서, 부정(False) 판정으로 되며, QR 코드 검출 처리의 스텝 1208(도 36 참조)이 부정 판정으로 된다.
이상 상세하게 설명한 바와 같이, 본 제 6 실시예에 의하면, 정사각형의 3코너에 배치되는 위치 요소 패턴의 명암 패턴을 미리 기억부에 기억시켜 둔다. 그리 고, 원고를 판독하여 얻어진 판독 화상 데이터에 의거하여, 상기 명암 패턴과 일치하는 모든 화상 영역을 특정한다. 특정한 모든 화상 영역 중, 중심을 선으로 이어 얻어지는 도형이 직각이등변삼각형으로 되는 3개의 화상 영역을 각각 이차원 코드의 위치 요소 패턴으로서, 상기 3개의 위치 요소 패턴에 의해 나타나는 영역을 이차원 코드로서 검출한다. 그 때문에, 화상 데이터에 포함되는 복수의 이차원 코드를 정밀도 좋게 검출할 수 있다.
또한, 본 제 6 실시예에 의하면, 상기 중심을 선으로 이어 얻어지는 직각이등변삼각형의 판독 화상 데이터의 천지 방향에 대한 각도를 미리 설정한다. 상기 각도의 조건을 충족시키는 직각이등변삼각형으로 되는 3개의 화상 영역을 각각 이차원 코드의 위치 요소 패턴으로 한다. 그 때문에, 화상 데이터에 포함되는 복수의 이차원 코드를 보다 고정밀도로 검출할 수 있다.
또한, 상기 각 실시예에 따른 복합기(910)의 구성(도 32 및 도 33 참조)은 일례이며, 본 발명의 취지를 일탈하지 않는 범위에서 적절히 변경 가능한 것은 말할 필요도 없다.
또한, 본 실시예에 따른 처리의 흐름(도 36 내지 38 및 도 40 참조)도 일례이며, 본 발명의 취지를 일탈하지 않는 범위에서 적절히 변경 가능하다.
예를 들어, 본 발명은 상기 판독 화상 데이터에서 이차원 코드가 존재하는 영역을 미리 설정하도록 할 수도 있다. 이 경우, 설정된 영역의 판독 화상 데이터만을 처리 대상으로 하면 되기 때문에, 처리 시간의 단축을 도모할 수 있다.
또한, 상기 판독 화상 데이터에 포함되는 이차원 코드의 개수를 미리 설정하 도록 할 수도 있다. 이 경우, 미리 설정된 이차원 코드의 개수만 직각이등변삼각형을 검출한 시점에서 처리를 종료하는 것도 가능해져 처리 시간의 단축을 도모할 수 있다.
또한, QR 코드의 크기, 회전 각도, 존재 영역, 개수의 조건을 적절하게 조합시켜 설정 가능하게 구성함으로써, 보다 고정밀도하고, 또한 신속하게 이차원 코드의 검출을 실행하는 것이 가능해진다.
또한, QR 코드의 크기, 회전 각도, 존재 영역, 개수 등의 조건에 대해서는 원고 판독 시에 판독하는 원고에 따른 조건을 사용자가 조작부(920)를 통하여 입력하도록 구성할 수 있다. 또한, 미리 복합기(910)의 메모리(938) 등에 기억시켜 설정하여 둘 수도 있다.
또한, 본 제 4 내지 제 6 실시예에서는, 본 발명을 복합기(910)에 적용한 형태에 대해서 설명했지만, 본 발명은 복합기(910)에 한정되는 것이 아니라, 복사기, 스캐너 등의 일반적인 화상 판독 장치에 적용할 수 있는 것은 말할 필요도 없다.
상술한 바와 같이 본 발명에 의하면, 위치 검출 패턴의 오인식에 의한 이차원 코드의 오검출을 방지하여 이차원 코드를 포함하는 화상으로부터 이차원 코드를 정확하게 검출할 수 있는 이차원 코드의 검출 방법, 검출 장치, 및 검출 프로그램을 기억한 기억 매체를 제공할 수 있다.

Claims (26)

  1. 직각이등변삼각형의 각 정점(頂点)에 대응하는 위치에 3개의 위치 검출 요소 패턴이 설치되고, 또한 상기 위치 검출 요소 패턴에 의해 정해지는 영역에 데이터 영역이 설치된 이차원 코드를 검출하는 방법으로서,
    화상에 포함되는 복수의 위치 검출 요소 패턴을 검출하고,
    검출된 위치 검출 요소 패턴의 중심점의 위치를 특정하며,
    위치가 특정된 상기 중심점 중에서 직각이등변삼각형의 정점을 구성하는 3개의 중심점을 선택하고,
    선택된 상기 중심점에 대응하는 상기 위치 검출 요소 패턴에 의해 정해지는 이차원 코드 영역 또는 그 주변 영역으로부터 이차원 코드로서의 특징을 추출하며,
    이차원 코드로서의 상기 특징이 추출된 경우에는, 상기 이차원 코드 영역에 1개의 이차원 코드가 존재한다고 판정하는 것을 포함하는 이차원 코드의 검출 방법.
  2. 제 1 항에 있어서,
    상기 추출은 상기 주변 영역에 존재하는 미리 규격화된 공백 영역을 상기 특징으로서 추출하는 것을 포함하는 이차원 코드의 검출 방법.
  3. 제 2 항에 있어서,
    상기 공백 영역은 적어도 상기 이차원 코드 영역의 상기 직각이등변삼각형의 짧은 변 측에 인접하여 존재하는 공백 영역인 이차원 코드의 검출 방법.
  4. 제 3 항에 있어서,
    상기 공백 영역은 상기 이차원 코드 영역의 상기 직각이등변삼각형의 짧은 변 측에, 상기 이차원 코드 영역의 외주로부터 소정 거리 이간(離間)한 가상선을 설정하고, 상기 가상선상의 총화소수에 대한 백색 화소수의 비율이 임계값을 초과한 것을 공백 영역으로 간주하는 이차원 코드의 검출 방법.
  5. 제 3 항에 있어서,
    상기 공백 영역은 상기 이차원 코드 영역의 상기 직각이등변삼각형의 짧은 변 측에, 상기 이차원 코드 영역의 외주로부터 소정 거리 내의 가상 영역을 설정하고, 상기 가상 영역의 총화소수에 대한 백색 화소수의 비율이 임계값을 초과한 것을 공백 영역으로 간주하는 이차원 코드의 검출 방법.
  6. 제 2 항에 있어서,
    상기 공백 영역은 상기 이차원 코드 영역의 주위 사방에 존재하는 이차원 코드의 검출 방법.
  7. 제 6 항에 있어서,
    상기 공백 영역은 상기 이차원 코드 영역의 주위 사방에, 상기 이차원 코드 영역의 외주로부터 소정 거리 이간한 가상선을 설정하고, 상기 가상선상의 총화소수에 대한 백색 화소수의 비율이 임계값을 초과한 것을 공백 영역으로 간주하는 이차원 코드의 검출 방법.
  8. 제 6 항에 있어서,
    상기 공백 영역은 상기 이차원 코드 영역의 주위 사방에, 상기 이차원 코드 영역의 외주로부터 소정 거리 내의 가상 영역을 설정하고, 상기 가상 영역의 총화소수에 대한 백색 화소수의 비율이 임계값을 초과한 것을 공백 영역으로 간주하는 이차원 코드의 검출 방법.
  9. 제 4 항에 있어서,
    상기 임계값은 상기 이차원 코드의 심벌 크기에 따라 정해진 값인 이차원 코드의 검출 방법.
  10. 제 1 항에 있어서,
    상기 추출은 상기 이차원 코드 영역의 백색 화소수와 흑색 화소수의 비(比) 또는 차를 상기 특징으로서 추출하는 것을 포함하는 이차원 코드의 검출 방법.
  11. 제 10 항에 있어서,
    상기 이차원 코드 영역에서는 상기 백색 화소수와 상기 흑색 화소수가 대략 동일해지는 이차원 코드의 검출 방법.
  12. 제 1 항에 있어서,
    상기 추출은 상기 이차원 코드 영역을 소정 방향으로 주사한 경우의 흑백 반전 회수가 소정 범위 내에 있다는 특징을 추출하는 것을 포함하는 이차원 코드의 검출 방법.
  13. 제 1 항에 있어서,
    위치가 특정된 상기 중심점 중에서 직각이등변삼각형의 정점을 구성하고, 또한 상기 3개의 중심점과는 조합이 상이한 3개의 중심점을 선택하며,
    선택된 상기 중심점에 대응하는 위치 검출 요소 패턴에 의해 정해지는 이차원 코드 영역 및 그 주변 영역으로부터 이차원 코드로서의 특징을 추출하고,
    이차원 코드로서의 상기 특징이 추출된 경우에는, 상기 이차원 코드 영역에 1개의 이차원 코드가 존재한다고 판정하며,
    복수의 이차원 코드를 차례로 검출하는 것을 더 포함하는 이차원 코드의 검출 방법.
  14. 직각이등변삼각형의 각 정점에 대응하는 위치에 3개의 위치 검출 요소 패턴이 설치되고, 또한 상기 위치 검출 요소 패턴에 의해 정해지는 영역에 데이터 영역 이 설치된 이차원 코드를 검출하는 이차원 코드의 검출 장치로서,
    화상에 포함되는 이차원 코드의 위치 검출 요소 패턴을 검출하고, 검출된 위치 검출 요소 패턴의 중심점의 위치를 특정하는 기준 위치 특정부와,
    상기 기준 위치 특정부에 의해 위치가 특정된 상기 중심점 중에서 직각이등변삼각형의 정점을 구성하는 3개의 중심점을 선택하며, 선택된 상기 중심점에 대응하는 위치 검출 요소 패턴에 의해 정해지는 이차원 코드 영역 및 그 주변 영역으로부터 이차원 코드로서의 특징을 추출하는 특징 추출부와,
    상기 특징 추출부에 의해 이차원 코드로서의 상기 특징이 추출된 경우에는, 상기 이차원 코드 영역에 1개의 이차원 코드가 존재한다고 판정하는 판정부를 구비하는 이차원 코드의 검출 장치.
  15. 제 14 항에 기재된 검출 장치에 의해 검출된 이차원 코드를 복호(復號)하는 복호부를 더 구비한 이차원 코드의 검출 장치.
  16. 제 15 항에 있어서,
    상기 복호부에 의한 이차원 코드의 복호 전에, 상기 이차원 코드의 화소 배열 방향이 주사 방향과 평행해지는, 또는 직교하도록 상기 이차원 코드의 회전 위치를 보정하는 위치 보정부를 더 구비한 이차원 코드의 검출 장치.
  17. 컴퓨터에 의해, 직각이등변삼각형의 각 정점에 대응하는 위치에 3개의 위치 검출 요소 패턴이 설치되고, 또한 상기 위치 검출 요소 패턴에 의해 정해지는 영역에 데이터 영역이 설치된 이차원 코드를 검출하는 프로그램을 기억한 기억 매체로서, 상기 프로그램이 컴퓨터에,
    이치화된 화상에 포함되는 복수의 위치 검출 요소 패턴을 검출하고,
    검출된 위치 검출 요소 패턴의 중심점의 위치를 특정하며,
    위치가 특정된 상기 중심점 중에서 직각이등변삼각형의 정점을 구성하는 3개의 중심점을 선택하고,
    선택된 상기 중심점에 대응하는 위치 검출 요소 패턴에 의해 정해지는 이차원 코드 영역 또는 그 주변 영역으로부터 이차원 코드로서의 특징을 추출하며,
    이차원 코드로서의 상기 특징이 추출된 경우에는, 상기 이차원 코드 영역에 1개의 이차원 코드가 존재한다고 판정하는 것을 포함하는 이차원 코드의 검출 처리를 실행시키는 프로그램을 기억한 기억 매체.
  18. 제 5 항에 있어서,
    상기 임계값은 상기 이차원 코드의 심벌 크기에 따라 정해진 값인 이차원 코드의 검출 방법.
  19. 제 7 항에 있어서,
    상기 임계값은 상기 이차원 코드의 심벌 크기에 따라 정해진 값인 이차원 코드의 검출 방법.
  20. 제 8 항에 있어서,
    상기 임계값은 상기 이차원 코드의 심벌 크기에 따라 정해진 값인 이차원 코드의 검출 방법.
  21. 정사각형의 3코너에 배치되는 위치 요소 패턴의 명암 패턴을 미리 기억부에 기억시키고,
    원고를 판독하여 얻어진 판독 화상 데이터에 의거하여, 상기 명암 패턴과 일치하는 모든 화상 영역을 특정하며,
    특정한 모든 화상 영역 중, 중심을 선으로 이어 얻어지는 도형이 직각이등변삼각형으로 되는 3개의 화상 영역을 각각 이차원 코드의 위치 요소 패턴으로서, 상기 3개의 위치 요소 패턴에 의해 나타나는 영역을 이차원 코드로서 검출하는 것을 포함하는 이차원 코드의 검출 방법.
  22. 제 21 항에 있어서,
    상기 중심을 선으로 이어 얻어지는 직각이등변삼각형의 크기를 미리 설정하는 것을 더 포함하는 이차원 코드의 검출 방법.
  23. 제 21 항에 있어서,
    상기 중심을 선으로 이어 얻어지는 직각이등변삼각형의 판독 화상 데이터의 천지(天地) 방향에 대한 각도를 미리 설정하는 것을 더 포함하는 이차원 코드의 검출 방법.
  24. 제 21 항에 있어서,
    상기 판독 화상 데이터에서 이차원 코드가 존재하는 영역을 미리 설정하는 것을 더 포함하는 이차원 코드의 검출 방법.
  25. 제 21 항에 있어서,
    상기 판독 화상 데이터에 포함되는 이차원 코드의 개수를 미리 설정하는 것을 더 포함하는 이차원 코드의 검출 방법.
  26. 정사각형의 3코너에 배치되는 위치 요소 패턴의 명암 패턴을 미리 기억시킨 기억부와,
    원고를 판독하여 얻어진 판독 화상 데이터에 의거하여, 상기 명암 패턴과 일치하는 모든 화상 영역을 특정하는 위치 요소 패턴 특정부와,
    상기 특정부에 의해 특정된 상기 화상 영역 중, 중심을 선으로 이어 얻어지는 도형이 직각이등변삼각형으로 되는 3개의 화상 영역을 각각 이차원 코드의 위치 요소 패턴으로서, 상기 3개의 위치 요소 패턴에 의해 나타나는 영역을 이차원 코드로서 검출하는 검출부를 구비한 이차원 코드의 검출 장치.
KR1020060090669A 2005-09-20 2006-09-19 이차원 코드의 검출 방법, 검출 장치, 및 검출 프로그램을기억한 기억 매체 KR100828539B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JPJP-P-2005-00272915 2005-09-20
JP2005272915A JP4645384B2 (ja) 2005-09-20 2005-09-20 二次元バーコードの検出方法及び検出装置
JPJP-P-2005-00280798 2005-09-27
JP2005280798A JP2007094584A (ja) 2005-09-27 2005-09-27 二次元コードの検出方法、検出装置、及び検出プログラム

Publications (2)

Publication Number Publication Date
KR20070032919A true KR20070032919A (ko) 2007-03-23
KR100828539B1 KR100828539B1 (ko) 2008-05-13

Family

ID=37894026

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060090669A KR100828539B1 (ko) 2005-09-20 2006-09-19 이차원 코드의 검출 방법, 검출 장치, 및 검출 프로그램을기억한 기억 매체

Country Status (2)

Country Link
US (1) US8061615B2 (ko)
KR (1) KR100828539B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100952568B1 (ko) * 2009-04-15 2010-04-12 (주) 씨이엔 점 패턴 분석을 통한 코드 생성 방법과 이를 위한 기록매체
JP2017203787A (ja) * 2013-11-15 2017-11-16 株式会社Ihi 位置把握方法及びシート材
CN111047614A (zh) * 2019-10-10 2020-04-21 南昌市微轲联信息技术有限公司 一种基于特征提取的复杂场景图像的目标角点提取方法
CN111291584A (zh) * 2016-07-22 2020-06-16 阿里巴巴集团控股有限公司 识别二维码位置的方法及其系统

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060050961A1 (en) * 2004-08-13 2006-03-09 Mohanaraj Thiyagarajah Method and system for locating and verifying a finder pattern in a two-dimensional machine-readable symbol
KR100828539B1 (ko) 2005-09-20 2008-05-13 후지제롯쿠스 가부시끼가이샤 이차원 코드의 검출 방법, 검출 장치, 및 검출 프로그램을기억한 기억 매체
JP4911340B2 (ja) * 2006-02-10 2012-04-04 富士ゼロックス株式会社 二次元コード検出システムおよび二次元コード検出プログラム
JP4539701B2 (ja) * 2007-09-26 2010-09-08 富士ゼロックス株式会社 コード読取装置、及びコード読取プログラム
JP5111055B2 (ja) * 2007-10-26 2012-12-26 キヤノン株式会社 画像処理装置及び画像処理方法、コンピュータプログラム
US8313029B2 (en) * 2008-01-31 2012-11-20 Seiko Epson Corporation Apparatus and methods for decoding images
US8101813B2 (en) * 2008-10-30 2012-01-24 Kimberly-Clark Worldwide, Inc. Training progress indicator
US9355293B2 (en) * 2008-12-22 2016-05-31 Canon Kabushiki Kaisha Code detection and decoding system
JP5541672B2 (ja) * 2009-02-10 2014-07-09 キヤノン株式会社 装置、方法、プログラム
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
US8144925B2 (en) * 2010-08-24 2012-03-27 Seiko Epson Corporation Mapping based message encoding for fast reliable visible watermarking
AU2010257441B2 (en) * 2010-12-24 2012-09-20 Canon Kabushiki Kaisha Method, apparatus and system for identifying candidate pairs of finder patterns of a barcode
US9220640B2 (en) 2010-12-30 2015-12-29 Kimberly-Clark Worldwide, Inc. Absorbent article including two dimensional code made from an active graphic
US20120173249A1 (en) 2010-12-30 2012-07-05 Kimberly-Clark Worldwide, Inc. Absorbent Article With Integrated Machine Readable Code
JP5657461B2 (ja) * 2011-04-13 2015-01-21 サトーホールディングス株式会社 プリンタ
JP5490058B2 (ja) * 2011-06-08 2014-05-14 キヤノン株式会社 複写禁止情報を含む2次元コードを抽出可能な画像形成装置、その画像形成方法、プログラム
US8608074B2 (en) 2011-12-20 2013-12-17 Seiko Epson Corporation Method and apparatus for locating and decoding machine-readable symbols
US9280541B2 (en) 2012-01-09 2016-03-08 Five9, Inc. QR data proxy and protocol gateway
KR101313681B1 (ko) 2012-04-10 2013-10-02 위드로봇 주식회사 2차원 바코드 및 2차원 바코드 디코딩 방법
US8608053B2 (en) 2012-04-30 2013-12-17 Honeywell International Inc. Mobile communication terminal configured to display multi-symbol decodable indicia
CN103581567B (zh) 2012-07-31 2016-12-28 国际商业机器公司 可视编码序列处理方法及其系统、可视编码序列播放及其系统
KR101801217B1 (ko) * 2012-11-13 2017-11-24 교도 인사쯔 가부시키가이샤 이차원 코드
US20140210857A1 (en) * 2013-01-28 2014-07-31 Tencent Technology (Shenzhen) Company Limited Realization method and device for two-dimensional code augmented reality
US9191108B2 (en) 2013-07-16 2015-11-17 Intel Corporation Techniques for low power visual light communication
KR102107395B1 (ko) * 2013-08-28 2020-05-07 삼성전자주식회사 모바일 단말기 및 그의 코드 인식 방법
GB2525448B (en) * 2014-04-27 2018-01-24 Gurulogic Microsystems Oy Encoder and decoder
US9811592B1 (en) 2014-06-24 2017-11-07 Google Inc. Query modification based on textual resource context
US9830391B1 (en) 2014-06-24 2017-11-28 Google Inc. Query modification based on non-textual resource context
JP5984880B2 (ja) * 2014-06-27 2016-09-06 京セラドキュメントソリューションズ株式会社 画像処理装置
JP2016076283A (ja) * 2014-10-06 2016-05-12 富士通株式会社 データ判定装置,ライブラリ装置,及びデータ判定方法
CN104408698B (zh) * 2014-10-29 2017-06-06 中山大学 一种基于压缩感知的二维码图像光照均衡方法
WO2016119239A1 (zh) * 2015-01-30 2016-08-04 深圳市民德电子科技股份有限公司 矩阵式二维码及其编码方法和译码方法
US9501681B1 (en) 2015-07-14 2016-11-22 A9.Com, Inc. Decoding visual codes
CN105184208B (zh) * 2015-09-02 2017-10-31 福建联迪商用设备有限公司 一种二维码初步定位方法及系统
CN105138943B (zh) * 2015-09-02 2017-10-24 福建联迪商用设备有限公司 Qr码位置探测图形破损时的解码方法及系统
US10311596B2 (en) * 2015-10-16 2019-06-04 Seiko Epson Corporation Image processing device, robot, robot system, and marker
JP6520659B2 (ja) * 2015-11-17 2019-05-29 富士通株式会社 シンボル検出装置、画像処理装置、及び、シンボル検出方法
JP6651837B2 (ja) * 2015-12-22 2020-02-19 富士ゼロックス株式会社 画像走査装置、画像読み取り装置、および、プログラム
US11003667B1 (en) 2016-05-27 2021-05-11 Google Llc Contextual information for a displayed resource
US10152521B2 (en) 2016-06-22 2018-12-11 Google Llc Resource recommendations for a displayed resource
US10802671B2 (en) 2016-07-11 2020-10-13 Google Llc Contextual information for a displayed resource that includes an image
US10051108B2 (en) 2016-07-21 2018-08-14 Google Llc Contextual information for a notification
US10489459B1 (en) 2016-07-21 2019-11-26 Google Llc Query recommendations for a displayed resource
US10467300B1 (en) 2016-07-21 2019-11-05 Google Llc Topical resource recommendations for a displayed resource
US10212113B2 (en) 2016-09-19 2019-02-19 Google Llc Uniform resource identifier and image sharing for contextual information display
US10679068B2 (en) 2017-06-13 2020-06-09 Google Llc Media contextual information from buffered media data
CN112861560B (zh) * 2017-09-27 2023-12-22 创新先进技术有限公司 二维码定位方法及装置
US10803291B2 (en) * 2017-11-17 2020-10-13 Pixart Imaging Inc. Encoding and decoding method and information recognition device using the same
CN108647550B (zh) * 2018-04-11 2021-07-16 中山大学 一种基于机器学习的二维码模糊聚类识别方法及系统
JP7199845B2 (ja) * 2018-06-19 2023-01-06 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
CN111523331B (zh) * 2019-02-02 2023-03-21 北京骑胜科技有限公司 一种二维码识别方法及装置
CN110263597B (zh) * 2019-06-27 2022-08-19 深圳市优象计算技术有限公司 一种快速准确的qr码校正方法及系统
CN112016339B (zh) * 2020-08-18 2023-12-29 中移(杭州)信息技术有限公司 二维码识别及缺损修复方法、装置、电子设备及存储介质
CN113298213B (zh) * 2021-06-03 2023-12-22 杭州三坛医疗科技有限公司 标签、标签检测方法与装置、视觉基准系统、设备和介质

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6012515A (ja) 1983-07-02 1985-01-22 Agency Of Ind Science & Technol 光導波回路の製造方法
US5319181A (en) 1992-03-16 1994-06-07 Symbol Technologies, Inc. Method and apparatus for decoding two-dimensional bar code using CCD/CMD camera
US5365048A (en) * 1992-02-20 1994-11-15 Olympus Optical Co., Ltd. Bar code symbol reading apparatus with double-reading preventing function
US5276315A (en) * 1992-05-14 1994-01-04 United Parcel Service Of America, Inc. Method and apparatus for processing low resolution images of degraded bar code symbols
JPH07141458A (ja) 1993-11-19 1995-06-02 Fujitsu Kiden Ltd 多段バーコードの読取り方式
US5726435A (en) * 1994-03-14 1998-03-10 Nippondenso Co., Ltd. Optically readable two-dimensional code and method and apparatus using the same
JP2938338B2 (ja) 1994-03-14 1999-08-23 株式会社デンソー 二次元コード
JP3639328B2 (ja) * 1994-10-14 2005-04-20 オリンパス株式会社 情報記録媒体、2次元コード、情報再生システム、及び情報再生方法
JP2952170B2 (ja) * 1994-12-16 1999-09-20 オリンパス光学工業株式会社 情報再生システム
JP2867904B2 (ja) * 1994-12-26 1999-03-10 株式会社デンソー 2次元コード読取装置
JP3448120B2 (ja) * 1994-12-27 2003-09-16 シャープ株式会社 デジタル情報記録担体
JP3668275B2 (ja) * 1995-03-15 2005-07-06 シャープ株式会社 デジタル情報記録方法、解読方法および解読装置
JP3209108B2 (ja) * 1996-08-23 2001-09-17 松下電器産業株式会社 2次元コード読み取り装置
JP3228197B2 (ja) 1997-10-15 2001-11-12 株式会社デンソー 光学情報読取装置および記録媒体
US6685095B2 (en) * 1998-05-05 2004-02-03 Symagery Microsystems, Inc. Apparatus and method for decoding damaged optical codes
US6267296B1 (en) * 1998-05-12 2001-07-31 Denso Corporation Two-dimensional code and method of optically reading the same
JP2000222517A (ja) * 1998-11-27 2000-08-11 Denso Corp 2次元コ―ド読取方法、2次元コ―ド読取装置及び記録媒体
US6294349B1 (en) * 1999-03-01 2001-09-25 University Of Mississippi Medical Ctr. Method of diagnosing and monitoring malignant breast carcinomas
JP4288756B2 (ja) * 1999-04-08 2009-07-01 株式会社デンソー 情報コード概略存在領域推定方法、情報コード読取方法及び装置、記録媒体
JP3607131B2 (ja) * 1999-05-26 2005-01-05 株式会社デンソー 情報コード画像取込装置、光学情報読取装置及び画像取込タイミング設定システム
JP3397170B2 (ja) 1999-05-27 2003-04-14 株式会社デンソー 情報コードの記録位置検知装置及び光学情報読取装置
JP2001256425A (ja) 2000-03-10 2001-09-21 Denso Corp 光学情報読取装置
JP4419269B2 (ja) * 2000-04-18 2010-02-24 富士通株式会社 二次元コード抽出方法
JP3896827B2 (ja) 2001-02-21 2007-03-22 株式会社デンソー 情報コードの解読方法および解読システム
JP3516144B1 (ja) * 2002-06-18 2004-04-05 オムロン株式会社 光学情報コードの読取方法および光学情報コード読取装置
JP2004054529A (ja) * 2002-07-18 2004-02-19 Sharp Corp 2次元コード読み取り方法,2次元コード読み取りプログラム,該2次元コード読み取りプログラムの記録媒体及び2次元コード読み取り装置
JP4301775B2 (ja) * 2002-07-18 2009-07-22 シャープ株式会社 2次元コード読み取り装置,2次元コード読み取り方法,2次元コード読み取りプログラム及び該プログラムの記録媒体
KR100498763B1 (ko) * 2002-12-24 2005-07-01 한국전자통신연구원 바코드 고속 관심 영역 위치 판독 시스템 및 제어 방법
JP2004213061A (ja) 2002-12-26 2004-07-29 Toshiba Corp 光学的文字読取装置および2次元コードの読取方法
JP4058478B2 (ja) 2003-06-27 2008-03-12 株式会社デンソーウェーブ 光学的情報の読取方法
KR20040004233A (ko) * 2003-11-27 2004-01-13 충 정 Qr코드라벨을 천공하여 생성 및 출력하는 방법, 그리고 직·간접광원을 비추어 상기 라벨을 인식하는 방법
JP4180497B2 (ja) * 2003-12-05 2008-11-12 富士通株式会社 コード種類判別方法、およびコード境界検出方法
JP4192847B2 (ja) * 2004-06-16 2008-12-10 カシオ計算機株式会社 コード読取装置およびプログラム
KR100828539B1 (ko) 2005-09-20 2008-05-13 후지제롯쿠스 가부시끼가이샤 이차원 코드의 검출 방법, 검출 장치, 및 검출 프로그램을기억한 기억 매체
JP2007090448A (ja) * 2005-09-27 2007-04-12 Honda Motor Co Ltd 二次元コード検出装置及びそのプログラム、並びに、ロボット制御情報生成装置及びロボット

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100952568B1 (ko) * 2009-04-15 2010-04-12 (주) 씨이엔 점 패턴 분석을 통한 코드 생성 방법과 이를 위한 기록매체
JP2017203787A (ja) * 2013-11-15 2017-11-16 株式会社Ihi 位置把握方法及びシート材
KR20180088528A (ko) * 2013-11-15 2018-08-03 가부시키가이샤 아이에이치아이 검사 시스템
US10801996B2 (en) 2013-11-15 2020-10-13 Ihi Corporation Inspection system
CN111291584A (zh) * 2016-07-22 2020-06-16 阿里巴巴集团控股有限公司 识别二维码位置的方法及其系统
CN111047614A (zh) * 2019-10-10 2020-04-21 南昌市微轲联信息技术有限公司 一种基于特征提取的复杂场景图像的目标角点提取方法
CN111047614B (zh) * 2019-10-10 2023-09-29 南昌市微轲联信息技术有限公司 一种基于特征提取的复杂场景图像的目标角点提取方法

Also Published As

Publication number Publication date
US20070071320A1 (en) 2007-03-29
US8061615B2 (en) 2011-11-22
KR100828539B1 (ko) 2008-05-13

Similar Documents

Publication Publication Date Title
KR100828539B1 (ko) 이차원 코드의 검출 방법, 검출 장치, 및 검출 프로그램을기억한 기억 매체
JP2938338B2 (ja) 二次元コード
JP2835274B2 (ja) 画像認識装置
JP5262869B2 (ja) 画像処理システム、画像処理サーバ、mfp及び画像処理方法
JP4180497B2 (ja) コード種類判別方法、およびコード境界検出方法
JP4911340B2 (ja) 二次元コード検出システムおよび二次元コード検出プログラム
US7946491B2 (en) Method, apparatus, and computer program product for providing a camera barcode reader
US8254683B2 (en) Code image processing method
US20050242186A1 (en) 2D rectangular code symbol scanning device and 2D rectangular code symbol scanning method
JP2004054530A (ja) 2次元コード読み取り装置,2次元コード読み取り方法,2次元コード読み取りプログラム及び該プログラムの記録媒体
JPH0612515A (ja) Ccd/cmdカメラを使用して二次元バーコードを復号する方法及び装置
JP2008533546A (ja) バーコードスキャナ復号
CN108573184B (zh) 一种二维码定位方法、模块及计算机可读存储介质
JP2004185058A (ja) バーコード認識方法、および認識用デコード処理装置
JP2007094584A (ja) 二次元コードの検出方法、検出装置、及び検出プログラム
JP4645384B2 (ja) 二次元バーコードの検出方法及び検出装置
JP4398498B2 (ja) コード境界検出方法
JP2008287414A (ja) 光学式認識コード認識装置及び方法及びプログラム
JP2007213358A (ja) 二次元コード検出システムおよび二次元コード検出プログラム
KR100860110B1 (ko) 도트 패턴을 이용한 정보 입출력 방법
JP3350596B2 (ja) 傾き検出方法
JP3567904B2 (ja) 2次元コード読み取り装置
JPH09185672A (ja) データ読取装置
JPH08115428A (ja) 領域判別装置
JP2010273120A (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: 20130502

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140418

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150416

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160418

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20180418

Year of fee payment: 11