KR20010113578A - 코드인식을 위한 장치 및 그 방법 - Google Patents

코드인식을 위한 장치 및 그 방법 Download PDF

Info

Publication number
KR20010113578A
KR20010113578A KR1020010068378A KR20010068378A KR20010113578A KR 20010113578 A KR20010113578 A KR 20010113578A KR 1020010068378 A KR1020010068378 A KR 1020010068378A KR 20010068378 A KR20010068378 A KR 20010068378A KR 20010113578 A KR20010113578 A KR 20010113578A
Authority
KR
South Korea
Prior art keywords
image
color
code
code image
standard
Prior art date
Application number
KR1020010068378A
Other languages
English (en)
Other versions
KR100339691B1 (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 한탁돈
Priority to KR1020010068378A priority Critical patent/KR100339691B1/ko
Publication of KR20010113578A publication Critical patent/KR20010113578A/ko
Priority to JP2003542972A priority patent/JP4016342B2/ja
Priority to EP02802741A priority patent/EP1456816B1/en
Priority to CNB028215982A priority patent/CN1310187C/zh
Priority to PCT/KR2002/000886 priority patent/WO2003041014A1/en
Priority to ES02802741T priority patent/ES2303566T3/es
Priority to AT02802741T priority patent/ATE387676T1/de
Priority to DE60225329T priority patent/DE60225329T2/de
Priority to US10/492,305 priority patent/US6981644B2/en
Application granted granted Critical
Publication of KR100339691B1 publication Critical patent/KR100339691B1/ko
Priority to HK05105479A priority patent/HK1072826A1/xx

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Communication Control (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Character Input (AREA)

Abstract

본 발명은 물리적으로 또는 전자적으로 표현된 코드이미지를 인식하고 그 코드이미지에 표시된 정보를 추출하기 위한 장치 및 방법에 관한 것으로, 코드이미지가 포함된 원본이미지를 입력받아 원본이미지에 포함된 배경영상을 검출한 다음 배경영상 부분이 제외된 코드이미지영역을 추출하여 코드이미지의 모양과 종류, 및 각 셀에 표시된 컬러 또는 농담을 인식하며, 각 셀에 대해 인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호로 변환하여 코드정보를 생성한다. 본 발명에 의하면 컬러나 농담으로 소정의 정보가 표시된 코드이미지를 입력받아 그 코드이미지가 입력된 환경에 관계없이 정확하게 원래의 컬러나 농담을 판별할 수 있다.

Description

코드인식을 위한 장치 및 그 방법{Apparatus for recognizing code and method therefor}
본 발명은 물리적으로 또는 전자적으로 표현된 코드이미지를 인식하고 그 코드이미지에 표시된 정보를 추출하기 위한 장치 및 방법에 관한 것이다.
문자나 숫자, 기호와 같은 인식 가능한 정보를 표시하는 방법에 있어서, 정보의 보안이나 표시공간을 고려하여 문자나 숫자, 기호 등이 이미지로 표시된 경우가 있다. 이와 같이 정보가 이미지로 표시된 코드이미지에 의하여 원래의 정보를 판독하기 위해서는 그에 적합한 디코더가 제공되어야 한다.
본 발명이 이루고자 하는 기술적 과제는 정보가 컬러 또는 농담으로 표현된 코드이미지로부터 원래의 정보를 판독할 수 있는 코드인식장치 및 그 방법을 제공하는데 있다.
도 1a는 본 발명의 실시예에 따른 코드인식장치의 블록도이며, 도 1b는 도 1a의 장치의 동작을 설명하는 흐름도이다.
도 2a-2e는 본 코드인식장치의 판독대상이라 할 수 있는 코드이미지의 다양한 예를 나타내며, 도 3a-3c는 소정의 정보를 이미지로 변환하는데 사용되는 코드변환표의 예를 나타내며, 도 4는 코드이미지가 실제로 명함에 적용된 예를 나타낸다.
도 5는 본 발명의 일 실시예에 따른 코드인식장치의 블록도이며, 도 6은 도 5의 장치가 동작하는 과정을 설명하는 흐름도이다.
도 7은 원본이미지로부터 흑백이미지를 구한 결과를 나타내는 도면이다.
도 8은 흑백이미지를 기준으로 잡영을 제거하는 과정은 설명하는 도면이다.
도 9는 코드이미지의 각 셀에 표시된 표준컬러를 인식하는 과정을 설명하기 위한 흐름도이다.
도 10-14은 도 9의 설명에 필요한 예이다.
도 15는 본 발명의 일 실시예에 대한 코드인식장치의 블록도이며, 도 16은 도 15에 도시된 장치의 동작을 설명하기 위한 흐름도이다.
상술한 과제를 해결하기 위한 본 발명에 의한 코드인식장치는, 코드이미지가 포함된 원본이미지를 획득하는 이미지획득부; 상기 원본이미지로부터 인식된 컬러나 농담을 환경변수에 의하여 보정한 다음 상기 보정된 컬러나 농담을 코드이미지의 생성시 사용된 복수의 표준컬러들 또는 표준 농담들로 변환하여 표준컬러들 또는 표준 농담들로 표시된 표준이미지를 생성하는 컬러변환부; 상기 원본이미지의 컬러 또는 농담을 소정의 기준값에 따라 두 가지의 컬러로 구분하여 이진화 이미지를 생성하는 이진화변환부; 상기 이진화 이미지를 기준으로 코드이미지 부분을 제외한 부분을 추출한 다음 상기 표준이미지에서 그에 대응하는 부분을 배경컬러로 표시하여 코드이미지 부분과 다른 부분을 구분하고, 상기 코드이미지 부분에 포함된 복수의 셀을 추출한 다음 상기 각 셀에 표시된 표준컬러 또는 표준농담을 인식하는 이미지처리부; 및 정보를 표시하기 위한 문자, 숫자 또는 기호 및 그에 대응하는 컬러 또는 농담과의 관계에 따라 상기 코드이미지의 각 셀에서 인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성하는 코드변환부;를 포함한다.
상술한 과제를 해결하기 위한 본 발명에 의한 다른 코드인식장치는, 코드이미지가 포함된 원본이미지를 획득하는 이미지획득부; 상기 원본이미지의 컬러 또는 농담을 소정의 기준값에 따라 두 가지의 컬러로 구분하여 이진화 이미지를 생성하는 이진화변환부; 상기 이진화 이미지를 기준으로 코드이미지 부분을 제외한 부분을 추출한 다음 상기 원본이미지에서 그에 대응하는 부분을 배경컬러로 표시하여 코드이미지 부분과 다른 부분을 구분하고, 상기 코드이미지 부분에 포함된 복수의 셀을 추출한 다음 상기 각 셀에 표시된 컬러 또는 농담을 인식하는 이미지처리부; 상기 코드이미지 부분에 포함된 각 셀에 대해 인식된 컬러나 농담을 환경변수에 의하여 보정한 다음 상기 보정된 컬러나 농담을 코드이미지의 생성시 사용된 복수의 표준컬러들 또는 표준농담들로 변환하여 표준컬러들 또는 표준 농담들로 표시된 표준이미지를 생성하는 컬러변환부; 및 정보를 표시하기 위한 문자, 숫자 또는 기호 및 그에 대응하는 컬러 또는 농담과의 관계에 따라 상기 코드이미지의 각 셀에서인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성하는 코드변환부;를 포함한다.
상술한 과제를 해결하기 위한 본 발명에 의한 코드인식방법은, 코드이미지가 포함된 원본이미지를 획득하는 단계; 상기 원본이미지로부터 인식된 컬러나 농담을 환경변수에 의하여 보정하는 단계; 상기 보정된 컬러나 농담을 코드이미지의 생성시 사용된 복수의 표준컬러들 또는 표준 농담들로 변환하여 표준컬러들 또는 표준 농담들로 표시된 표준이미지를 생성하는 단계; 상기 원본이미지의 컬러 또는 농담을 소정의 기준값에 따라 두 가지의 컬러로 구분하여 이진화 이미지를 생성하는 단계; 상기 이진화 이미지를 기준으로 코드이미지 부분을 제외한 부분을 추출하고 상기 표준이미지에서 그에 대응하는 부분을 배경컬러로 처리하여 코드이미지 부분과 다른 부분을 구분하는 단계; 상기 코드이미지 부분에 포함된 복수의 셀을 추출한 다음 상기 각 셀에 표시된 표준컬러 또는 표준농담을 인식하는 단계; 및 정보를 표시하기 위한 문자, 숫자 또는 기호 및 그에 대응하는 컬러 또는 농담과의 관계에 따라 상기 코드이미지의 각 셀에서 인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성하는 단계;를 포함한다.
상술한 과제를 해결하기 위한 본 발명에 의한 다른 코드인식방법은, 코드이미지가 포함된 원본이미지를 획득하는 단계; 상기 원본이미지의 컬러 또는 농담을 소정의 기준값에 따라 두 가지의 컬러로 구분하여 이진화 이미지를 생성하는 단계; 상기 이진화 이미지를 기준으로 코드이미지 부분을 제외한 부분을 추출하고 상기 원본이미지에서 그에 대응하는 부분을 배경컬러로 처리하여 코드이미지 부분과 다른 부분을 구분하는 단계; 상기 코드이미지 부분에 포함된 복수의 셀을 추출한 다음 상기 각 셀에 표시된 컬러 또는 농담을 인식하는 단계; 상기 코드이미지 부분에 포함된 각 셀에 대해 인식된 컬러나 농담을 환경변수에 의하여 보정하는 단계; 상기 보정된 컬러나 농담을 코드이미지의 생성시 사용된 복수의 표준컬러들 또는 표준농담들로 변환하여 표준컬러들 또는 표준 농담들로 표시된 표준이미지를 생성하는 단계; 및 정보를 표시하기 위한 문자, 숫자 또는 기호 및 그에 대응하는 컬러 또는 농담과의 관계에 따라 상기 코드이미지의 각 셀에서 인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성하는 단계;를 포함한다.
이하에서, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세히 설명한다.
도 1a는 본 발명의 실시예에 따른 코드인식장치의 블록도이며, 도 1b는 도 1a의 장치의 동작을 설명하는 흐름도이다. 그리고, 도 2a-2e는 본 코드인식장치의 판독대상이라 할 수 있는 코드이미지의 다양한 예를 나타내며, 도 3a-3c는 소정의 정보를 이미지로 변환하는데 사용되는 코드변환표의 예를 나타내며, 도 4는 코드이미지가 실제로 명함에 적용된 예를 나타낸다. 코드인식장치는 물리적인 매체에 표시된 코드이미지(도 4의 우측하단에 도시된 사각형 이미지)를 판독하여 그 코드이미지가 표시하고자 하는 원래의 코드정보를 추출하기 위한 장치이다. 코드이미지는 숫자, 문자 또는 기호가 코드변환표에 의하여 변환되어 형성된 이미지를 말하며, 코드이미지는 도 2a-2d와 같이 다양한 형태로 표현될 수 있다. 먼저, 도 1a및 1b를 참조하여 코드인식장치의 기능 및 동작을 설명한다.
이미지 획득부(11)는 코드이미지를 포함하고 있는 물리적으로 또는 전자적으로 표현된 이미지를 획득한다(21). 코드이미지에는 최종적으로 추출하고자 하는 코드정보가 이미지 형태로 표현되어 있다. 이미지 획득부(11)는 이미지를 읽기 위한 스캐너, 디지털 카메라, PC 카메라, 센서, 팩스 등과 같은 화상입력장치를 통하여 물리적으로 표현된 이미지를 읽어들여 전자적으로 처리할 수 있는 이미지데이터 형태로 변환하거나 컴퓨터에서 직접 이용할 수 있는 이미지 파일 형태로 제공될 수 있다. 여기서, 이미지 획득부(11)의 출력신호를 원본이미지라고 칭하며, 이 원본이미지는 컴퓨터에서 처리할 수 있는 이미지 파일 형태로 구성되며, 여기에는 코드이미지와 함께 잡영이나 배경이 포함되어 있는 것이 보통이다.
이미지 처리부(13)는 원본이미지에서 코드이미지를 추출하고, 코드이미지에 포함된 복수의 셀에 표시된 컬러 또는 농담을 인식한다. 먼저, 환경변수 및/또는 컬러모드 등의 파라미터에 근거하여 원본이미지로부터 코드이미지 영역을 추출한다(22). 이미지 처리부(13)는 원본이미지에서 코드이미지와 관계되는 정보들을 생성하여, 코드이미지의 모양이나 위치, 종류를 판별(23)하고, 코드이미지에 포함된 셀들의 수와 모양, 위치를 판별(24)한 다음 각 셀에 표시된 색상이나 농담 등을 검출한다(25). 이미지 처리부(13)는 원본이미지를 획득할 당시의 환경을 고려하여 환경변수를 설정하고, 원본이미지로부터 인식된 컬러나 농담을 환경변수에 의하여 보정하여 원래의 컬러나 농담을 검출할 수 있다.
이미지 처리부(13)는 원본이미지에서 배경영상 부분이 제외된 코드이미지영역을 추출하여 코드이미지의 모양과 종류를 판별하고, 이를 기초로 코드이미지영역에 포함된 셀들을 구분하여 판별할 수 있다. 한편, 원본이미지가 입력된 상황에서의 밝기 정도에 따라 설정된 흑백환경변수를 기준으로 원본이미지를 흑백이미지로 변환하고, 흑백이미지에서 배경영상 부분에 코드정보를 표시하기 위해 사용된 컬러가 아닌 특유의 배경컬러로 표시한 다음 흑백이미지에서 배경컬러로 처리된 부분에 대응하는 원본이미지 부분을 배경컬러로 처리하여 코드이미지 부분과 다른 부분을 구분하여, 원본이미지에서 코드이미지 영역을 추출하는 것이 바람직하다. 흑백이미지를 이용함으로써 코드이미지 영역을 추출하는데 필요한 연산과정을 크게 줄일 수 있다.
이미지 처리부(13)는 배경컬러에 의하여 코드이미지 부분과 다른 부분이 서로 구분된 이미지를 입력받아 이를 복수의 블록으로 구분하고 각 단위 블록에서 배경컬러가 아닌 컬러나 농담을 갖는 영역을 검출한 다음 블록들 중 상기 영역이 가장 큰 블록을 선택하고, 그 블록에 포함된 코드이미지영역의 중심점을 검출하며, 그 중심점을 기준으로 전체 이미지를 탐색하여 배경컬러가 아닌 컬러나 농담을 갖는 영역을 코드이미지 영역으로 검출하는 것이 바람직하다.
코드설정부(17)는 정보를 표시하기 위한 문자, 숫자 또는 기호 및 그에 대응하는 컬러 또는 농담과의 관계가 설정되어 있다. 예컨대 도 3a-3c 중 어느 하나의 코드변환표에 의하여 코드이미지가 생성된 것이라면 원본이미지로부터 인식된 컬러나 농담에 대응하는 문자, 숫자 또는 기호에 대한 데이터를 제공한다. 코드변환부(15)는 코드설정부(17)에서 제공되는 관계에 따라 코드이미지의 각 셀에표시된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성한다(26).
이미지 내의 각 픽셀의 컬러나 농담을 판독하기 위해 사용되는 환경변수를 설정하는 예에 대하여 설명한다. 환경변수는 RGB 모델의 R,G,B 또는 HSV 모델의 H,S,V 또는 이들의 조합으로 설정할 수 있으며, 원본이미지가 읽혀진 환경을 고려하여 원본이미지로부터 인식된 컬러값이나 농담값을 정규화하기 위하여 설정된다. 다시 말하면, 컬러환경변수는 원본이미지로부터 읽어들인 컬러값이나 농담값, 예를 들어 RGB 컬러모델의 Red, Green, Blue, Brightness에 대한 값, 혹은 HSV 컬러모델의 Hue, Saturation, Value(Brightness)에 대한 값, CMYK 컬러모델의 Cyan, Magenta, Yellow, blacK에 대한 값, HSI 컬러모델의 Hue, Saturation, Intensity에 대한 값에 환경변수로 설정된 일정한 수치를 가감하도록 설정되는 값이다. 다양한 작업환경을 고려하여 원본이미지에 표시된 색상이나 농담을 그 이미지가 읽혀진 환경에 맞도록 조정하여 본래의 색상/농담을 찾을 수 있도록 한다.
일반적으로, 형광등이나 3파장 램프 조명과 같이 통상적으로 가장 널리 사용되는 조명 환경에 적합하도록 초기 환경변수가 설정된다. 또는 카메라로 원본이미지를 입력하기 전에 백색 종이를 배경으로 먼저 한 번 촬영하여 그 주위의 조명 환경에 따라 환경변수를 설정하는 것이 바람직하다. 예를 들어, 할로겐램프 조명 하에서는 붉은 빛이 상대적으로 강하므로 할로겐 램프에 의한 붉은 빛의 영향을 제거할 수 있도록 환경변수를 설정한다. 그 다음, 실제로 읽혀진 컬러를 환경변수에 의하여 정규화하면 조명에 의한 영향을 줄이고 원래의 컬러에 가까운 컬러를 얻을수 있다.
환경변수를 사용하여 컬러나 농담을 보정하는 예를 설명한다. 도 3b와 같은 코드변환표를 이용하여 8가지 색상으로 코드이미지가 형성된 경우를 가정한다. RGB 모델에서 원본이미지의 어느 픽셀에 표시된 RGB값이 (100, 100, 100)으로 인식되고, 환경변수가 {+100, -50, +50}으로 설정되어 있으면, 픽셀값에서 환경변수를 연산하면 그 픽셀의 수정된 RGB값은 (200,50, 150)이 된다. 이 계산 결과에서 각 색상요소 값이 128 이상이면 255로 변환하고 그렇지 않으면 0으로 변환하며, 그 결과 최종값은 (255, 0, 255)가 되므로 자홍색(magenta)로 판별하게 된다.
예 1) RGB 컬러모델에서, RGB 각각의 최대값은 255, 최소값은 0인데, (255, 0, 0)은 빨간색, (0, 255, 0)는 녹색, (0, 0, 255)는 파란색이며, (0, 0, 0)는 검정색, (255, 255, 255)는 흰색이다. x를 R, G, 또는 B값, y를 RGB 각각에 대한 환경변수값이라고 할 때, 각 픽셀에 대해 최종 RGB값은 다음과 같이 결정된다.
f(x) = 255, if x+y ≥128 (여기서, 0 ≤x, y ≤255)
0 , otherwise
예 2) YIQ, YUV 컬러모델은 RGB에 일정 가중치를 부여해서 구하는 컬러모델로서 RGB 모델과 유사하다. 즉, Y = 0.299R + 0.587G + 0.114B, I = 0.596R - 0.274G - 0.322B, Q = 0.211R - 0.523G + 0.312B의 형식으로 구할 수 있는데, 빛의 물리적 성질보다는 사람 눈에 부합하는 색상을 만들기 위해 이용된다. Y는 밝기, I와 Q는 각각 적색과 청색의 정도를 나타낸다.
f(y) = white, y >= 0.5
black, otherwise
예 3) CMYK 컬러모델은 주로 인쇄를 위한 컬러모델이며, 각 색요소를 %단위 또는 비율로 표시하는 방식으로서, RGB값과의 관계로 보면 (R/255, G/255, B/255)로 표현된다. x를 C. M. Y, K 값이라고 하고 y를 각 색 요소에 대응하는 환경변수값이라고 할 때, 각 픽셀에 대해 최종 CMYK값은 다음과 같이 결정된다.
f(x) = 1, if x+y ≥0.5 (여기서, 0 ≤x, y ≤1)
f(x) = 0, otherwise
예 4) HSV, HSI 컬러모델의 경우, Hue값이 각도로 표현된다. 여기서, x를 Hue 값이라고 하고, 컬러환경변수를 0 <= Trg < Tgb < Tbr <= 360 로 설정하면 컬러 판별방법은 다음과 같이 적용할 수 있다.
f(x) = red, if Tbr <= x < Trg
green, if Trg <= x < Tgb
blue, if Tgb <= x < Tbr
예 5) CIE(Commission Interantionale de L' clairage) 컬러모델에서 x와 y 평면에 색상의 위치가 표시되며, 이 경우 색상을 판별하는 기준으로 x,y가 사용되므로, 컬러 판별 방법은 다음과 같이 적용할 수 있다.
f(x,y) = red, if x >= 0.4
green, if x < 0.25, y >= 0.4
blue, if x < 0.25, y < 0.25
gray, otherwise
환경변수는 통상적으로 접하게 되는 환경과 그 환경에 따라 설정되어야 하는 환경변수 간의 관계 데이터를 데이터베이스에 저장해 두고, 실제 작업환경에 대해 미리 설정된 데이터를 독출하여 이용할 수 있다. 입력광학장치의 광학 특성 및 주변 조명상황 등을 분석하여 입력광학장치에 의하여 읽혀진 컬러를 원래의 컬러로 보정하거나 코드이미지를 배경과 구분할 수 있도록 실험적으로 환경변수가 설정되어, 기기나 환경의 영향을 배제하고 오차없이 컬러를 인식할 수 있게 한다. 또한, 서로 다른 목적을 갖는 둘 이상의 환경변수 그룹을 형성할 수 있다. 다시 말하면, 하나는 코드이미지를 배경과 분리하기 위한 환경변수이고, 다른 하나는 배경으로부터 분리된 코드이미지의 색채나 농담 등을 판별하기 위한 환경변수로 설정할 수 있다. 예를 들면, 붉은 조명의 환경에서 RGB 모델을 기반으로 컬러를 판별할 때 R값이 상대적으로 높게 나타나므로 광학장치에서 판독한 R 값을 소정의 가중치에 따라 감소시켜서 환경에 의한 영향을 배제시킨다. 또한 밝은 조명의 환경에서 입력된 코드이미지는 HSV 모델을 기반으로 흑백을 구별할 때 V값의 가중치를 증가시켜 컬러를 판별한다. 또한 어두운 조명의 환경에서는 HSV 모델에서 흑백과 이를 제외한 컬러를 구별하는 V값의 가중치를 감소시키고 S값의 가중치도 감소시켜서 컬러를 판별한다. 또한, 환경변수를 재설정함에 있어서, 광학장치에 의하여 코드이미지의 각 셀들에 대하여 얻은 R, G, B, H, S 및/또는 V값의 분포를 파악하고, 그 분포를 참조하여 환경변수 및 그에 대한 가중치를 재설정할 수 있다.
도 1a에 도시된 코드인식장치에 의하여 처리하고자 하는 코드이미지 및 그에 대응하는 코드정보의 예에 대하여 설명하기로 한다. 도 2a-2d는 본 발명에 따른 코드인식장치에 의하여 인식가능한 코드이미지의 다양한 표현 예를 나타내는 도면이다. 도면에서, 셀의 모양을 사각형, 원형, 타원형, 십자형 또는 벌집형 등으로 다양하게 구현할 수 있으며, 하나의 코드이미지를 형성하면서 이들 모양들의 조합도 가능하다. 코드이미지에 표시할 정보의 내용이나 양에 따라 코드이미지의 또는 셀의 모양과 크기는 적절히 선택할 수 있다. 또한 도 2d는 바코드와 유사한 모양을 하는 코드이미지도 포함된다. 복수의 셀로 구성되는 코드이미지의 전체적인 모양도 사각형, 원형, 타원형, 십자형 또는 벌집형 등으로 다양하게 구현할 수 있다.
도 2e는 코드이미지에 표시된 정보의 역할을 기준으로 코드이미지의 영역을 구별하여 표시한 도면이다. 코드이미지는 정보의 내용에 따라 색채(color), 농담(shade), 형상, 패턴 또는 이들의 결합이 다르게 인코딩되어 표시되는, 적어도 하나의 데이터셀로 형성된 데이터영역(291)이 포함된다. 데이터영역(291)은 문자 등이 이미지로 인코딩된 하나 이상의 데이터셀로 구성되며, 데이터셀은 그 각각이 하나의 문자와 같은 정보를 나타내도록 구성될 수 있으며, 또한 다수 개의 데이터셀 세트(set)가 하나 또는 그 이상의 정보를 나타내도록 구성될 수도 있다. 예컨대, 문자 "A"를 적색으로 된 셀 하나로 표시하거나 적색과 녹색으로 된 두 셀로 표시할 수 있다. 데이터영역(291)에 담기는 코드정보는 문자, 숫자, 기호 등으로 이루어지며, 이름, 주소, 전화번호, 팩스번호, 네트워크의 호스트 주소, 인터넷에서 사용되는 도메인 이름 및 IP 어드레스, URL, 프로토콜, 또는 문서명 등 사용자의 필요에 따라 여러 가지가 될 수 있다.
코드이미지에는 패리티영역(293), 참조영역(295) 및 제어영역(297) 중 적어도 하나가 더 포함될 수 있다. 패리티영역(293)은 데이터영역(291)에 표시된 셀들의 인식 오류 검사를 위한 패리티셀들로 형성된다. 참조영역(295)은 데이터영역(291)에 형성된 데이터셀의 색채, 농담, 형상, 패턴 또는 이들의 결합을 판단하기 위한 기준색채, 기준농담, 기준형상, 기준패턴 또는 이들의 결합을 제공하는 적어도 하나의 참조셀로 형성된다. 제어영역(297)은 데이터영역(291)에 표시된 정보를 이용하여 제공될 수 있는 명령이나 서비스를 표시하는 적어도 하나의 제어셀로 형성된다. 이하에서는, 데이터영역을 제외한 영역들, 예를 들어 패리티영역, 참조영역, 제어영역을 포함하는 영역을 통칭하여 "보조영역"이라 부르고, 보조영역에 포함되는 셀을 보조셀이라 표기하기로 한다.
패리티영역(293)은 색채 또는 농담 (만일 있다면, 형상 및/또는 패턴)이 코드정보의 내용에 대응하여 데이터셀들에 적합하게 표현되어 있는지의 여부를 판별하는데 사용된다. 패리티영역(293)은 데이터셀들에 표시된 색채 또는 농담에 대응하여 규정된 코드값에 따라 패리티데이터를 구하고, 패리티데이터에 대응하는 색채 또는 농담으로 패리티셀을 형성한다.
참조영역(295)은 데이터영역(291) 및/또는 보조영역에 있는 셀에 표현된 컬러(또는 농담, 만일 있다면 형상 또는 패턴)를 인식하는 기준컬러(또는 기준농담, 필요에 따라서는 기준형상이나 기준패턴)를 설정하는데 사용된다. 각 영역에 표시되는 셀의 컬러는 RGB(Red Blue Green). HSV(Hue Saturation Value), CMYK(Cyan Magenta Yellow blacK), HSI(Hue Saturation Intensity), CIE, YIQ 또는 YUV 등의 컬러 모델로 표시될 수 있다. 또한, 흑백 농담(그레이 스케일)에 의하여 코드를 형성하는 경우에도 참조영역(295)에 표시된 흑색 및/또는 백색을 기준으로 각 셀의 정보를 정확하게 인식할 수 있게 된다.
또한, 코드이미지에 포함된 각 영역 사이에는 영역을 구분하기 위한 경계영역을 더 포함할 수 있다. 또한 각 영역에 포함된 각 셀 사이에도 셀을 구분하기 위한 경계영역을 별도로 더 구비할 수 있다. 경계영역은 특정의 색상이나 패턴 등으로 된 선이나 셀로 구성될 수 있으며, 경계선 또는 경계영역은 검정색 또는 흰색으로 이루어질 수 있다.
프린트의 기종이나 인쇄용지의 재질에 따라 하나의 컬러라 하더라도 서로 다르게 인쇄될 수 있으며, 또한 스캐너나 카메라의 특성에 따라 동일한 색상이 다소 다르게 인식될 수 있다. 이러한 점을 고려하여, 참조영역(295)에 있는 참조셀은 데이터영역에 표시된 색상을 판별하는 기준을 제공한다. 즉, 출력장치에 따라 컬러가 다르게 출력되거나, 스캐너 등과 같은 입력장치에 따라 컬러가 다르게 입력되었다고 할 지라도, 참조영역(295)의 컬러와 데이터영역(291)의 컬러의 색조 차이(color difference)는 고정적이기 때문에 데이터영역(291)에 표현된 셀의 색상을 정확하게 인식할 수 있다. 따라서, 데이터영역(291)의 셀에 표시되는 색상은참조영역(295)의 기준 컬러와 대비된 상대적인 색조 차이를 가지므로, RGB 모델 또는 HSV 모델을 기준으로 참조영역(295)의 기준컬러와 비교하여 데이터영역(291)에 있는 셀의 컬러를 구함으로써, 이미지 입력장치나 출력장치가 달라지더라도 데이터셀의 정보를 정확하게 인식할 수 있다. 형상이나 패턴이 카메라 등의 입력장치로 입력될 경우, 그것이 기울어지거나 찌그러진 상태로 입력될 수 있다. 기준형상 또는 기준패턴이 참조영역에 의하여 제공됨으로써, 이러한 오입력 상태를 감지하도록 하여 데이터셀에 표현된 형상 또는 패턴을 정확하게 인식하도록 할 수 있다.
사용자는 데이터영역(291)의 코드정보를 이용하여 응용분야에 따라 다양한 서비스를 제공받을 수 있다. 예를 들어, 명함에 인터넷의 홈페이지 주소(즉, URL)가 코드이미지로 표시되어 있다면, 그 코드이미지를 컴퓨터로 디코딩 한 다음 그 컴퓨터 또는 그 컴퓨터에 연결된 서버 컴퓨터의 웹 브라우저(WEB browser)를 실행시켜 그 홈페이지로 접속하도록 프로그래밍될 수 있다. 또한, 인터넷의 전자우편 주소가 코드이미지로 표시되어 있는 경우라면, 그 코드이미지를 컴퓨터로 디코딩한 다음 그 컴퓨터의 메일링 소프트웨어(mailing software)를 실행시켜 그 전자우편 주소로 메일을 보낼 수 있는 환경을 제공할 수 있다. 다른 예로서, 코드이미지가 휴대용 단말기로 입력된 경우, 코드이미지에 대응하는 전화번호로 전화를 걸거나 지리정보 서비스를 제공받을 수 있다. 이 때, 이러한 자동 서비스 기능은 별도의 프로그램에 의하거나 디코딩 프로그램에서 목적정보의 종류에 따라 자동적으로 실행될 수 있도록 할 수 있다. 또한, 코드이미지 내에 별도의 이러한 명령어가 이미지로 표현된 제어영역(297)을 포함시켜, 그 제어영역(297)에서 디코딩된 제어정보를 이용하여 디코딩 프로그램에서 자동적으로 서비스하도록 실현할 수 있다.
또한 제어영역(297)에는 데이터영역의 목적정보를 제어하는 명령 또는 메타-데이터(meta-data) 등이 포함될 수 있다. 예를 들어, 제어영역(297)에 표시된 정보는 데이터영역(291)에 형성된 셀의 디코딩 순서, 또는 데이터영역(291)에 형성된 데이터셀의 색상의 판단기준이 되는 참조영역(295)의 참조셀의 위치, 패리티영역(293)의 위치나 속성 등 여러 가지 메타정보를 포함할 수 있다.
도 3a는 네 가지 색으로 두 비트의 데이터를 나타낼 수 있는 예를 나타낸다. 각 셀이 4가지의 색상 중 어느 하나를 가질 수 있다면 하나의 컬러셀로 2비트의 데이터를 표현할 수 있다. 그러면 연속된 4개의 셀들로 하나의 문자를 표시하도록 정의한다면 8비트, 즉 256가지의 문자를 표현할 수 있다. 한편, 동일한 컬러를 갖지만 셀이 가질 수 있는 형상의 종류를 네 가지(예: 작은 사각형, 큰 사각형, 작은 원, 큰 원)로 하면 두 비트의 데이터를 나타낼 수 있으며, 만일 각 셀 내부가 네 가지의 다른 컬러로 채워질 수 있다면 256가지(8비트)의 정보를 표현할 수 있다. 도 3b는 각종 문자(알파벳이나 특수문자 등)나 숫자 또는 모양 등을 이미지로 변환하는 코드변환표의 일 예를 나타내는 도면으로서, 하나의 문자가 한 개 또는 두 개의 컬러셀로 매핑되는 예이다.
도 3b의 코드변환표를 이용한 인코딩 방법으로는, 각종 문자 등을 코드값으로 변환한 다음 각 코드값에 할당된 컬러(색채)로 코드이미지를 생성하는 것이다. 본 예에서는 8가지의 색을 이용하여 코드이미지를 생성하며, 하나의 문자나 숫자를 나타내기 위하여 연속된 두 셀을 사용한 예를 나타낸다. 8가지 색에 대해서는"000"에서 "111"까지의 코드값이 할당되며, 각 문자는 두가지 색으로 인코딩된다. 예컨대, 숫자 "3"은 코드값 "000 011"로 할당되고, 코드값 "000"에 할당된 색(흑색)과 코드값 "011"에 할당된 색(시얀색)으로 인코딩되어, 흑색셀과 시얀색셀로 연속된 두 셀로 이미지화 된다. 도 3b에 도시된 코드변환표에 따라 코드정보에 포함된 각종 문자나 숫자를 코드값으로 변환한 다음 그 코드값에 대응되는 컬러를 사각형 셀들의 조합으로 된 사각 매트릭스 형태로 표현할 수 있다.
도 3c는 회색조 코드(greyscale code)를 이용하여 코드이미지를 생성하는 일 실시예를 나타낸다. 회색조 코드는 컬러를 이루는 R(Red), G(Green), B(Blue)의 혼합 비율 대신에 흑백의 밝기에 따라 코드를 형성하는 것이다. 따라서, 참조영역은 흑색, 백색 또는 회색 중 어느 하나가 기준농담으로 설정되고, 데이터영역에 있는 셀은 참조영역의 기준농담과 비교한 회색조 차이(grey difference)에 의해 코딩된 값을 가지게 된다. 코드이미지에 참조영역이 없으면, 코드이미지의 각 셀의 농담을 계산하고, 서로 비슷한 농담을 갖는 셀들(셀집합)을 모아서 동일한 셀집합에 속한 셀들에 대해 동일한 코드값을 부여한 다음 패리티영역을 이용하여 디코딩 오류여부를 판별할 수 있다. 만일 판별오류가 발생하면, 각 셀의 농담을 재계산하거나 셀집합을 형성하는 기준을 달리 설정한 다음 다시 오류여부를 판별한다. 이러한 회색조 코드이미지는 신문과 같이 주로 흑백으로 인쇄된 매체에 적용할 수 있다.
도 4는 전술한 바와 같은 코드체계 등을 이용하여 명함에 코드이미지가 표현된 예를 나타낸다. 도 1의 코드인식장치를 이용하는 경우, 사용자는 카메라나 스캐너를 이용하여 명함의 우측하단에 표시된 사각형의 코드이미지 부분이 포함되도록 이미지 파일을 생성하게 되며, 그 이미지 파일을 처리하여 그 코드이미지가 표현하고자 하는 코드정보를 인식할 수 있다.
도 5는 본 발명의 일 실시예에 따른 코드인식장치의 블록도이며, 도 6은 도 5의 장치가 동작하는 과정을 설명하는 흐름도이다.
이미지획득부(51)는 코드이미지가 포함된 원본이미지를 획득한다. 카메라나 스캐너와 같은 화상입력장치를 이용하여 획득한 이미지파일, 또는 전자파일 형태로 존재하는 이미지파일을 입력받아, 필요시 데이터포맷을 변환한다. 예컨대, 압축된 영상이미지 파일이면 압축을 풀고 비트맵 형태의 이미지파일로 변환한다. 위와 같이 입력받은 이미지파일은 메모리(52)에 원본이미지로서 저장된다. 원본이미지에는 사용자가 검출하기를 원하는 코드이미지와 함께 그 주변의 잡영도 포함되는 것이 보통이다.
제어부(58)는 코드이미지의 종류를 입력받고, 원본이미지를 획득할 당시의 환경을 고려하여 환경변수를 설정하거나 이미 저장된 환경변수를 읽어 컬러필터(53)로 전송한다. 메모리(52)는 이미지 처리과정에서 필요한 이미지 데이터를 임시로 저장한다.
컬러필터(53)는 원본이미지로부터 인식된 컬러나 농담을 환경변수에 의하여 보정한 다음 그 보정된 컬러나 농담을 코드이미지의 생성시 사용된 복수의 표준컬러들 또는 표준농담들로 변환하여 표준컬러들 또는 표준 농담들로 표시된 표준이미지를 생성한다. 여기서, 표준컬러들 또는 표준농담들은 코드이미지 생성시 문자,숫자 또는 기호에 대응하여 설정된 컬러들 및 농담들을 말한다 (도 3a-3c 참조). 물리적인 매체에 표시된 코드이미지는 코드이미지를 화상출력장치로 프린트할 때 또는 코드이미지를 화상입력장치로 입력할 때 화상장치의 특성이나 주변 환경의 영향으로 인하여 원래 설정된 컬러 그대로 표시되거나 인식되지 않는 경우가 있다. 예를 들어, 자홍색의 경우 RGB값이 (255, 0, 255)이지만, 자홍색이 표시된 셀로부터 인식된 RGB값은 정확하게 (255, 0, 255)가 되지 않고, 그 근처의 값을 갖게 될 것이다. 따라서, 실제로 인식된 컬러나 농담을 표준컬러나 표준농담으로 변환하여야 코드변환표를 적용하여 코드정보를 추출할 수 있다.
이진화필터(54)는 원본이미지의 컬러 또는 농담을 소정의 기준값(흑백환경변수)에 따라 두 가지의 컬러로 구분하여 이진화된 이미지를 생성한다. 이진화이미지는 흑백으로 구현되거나 특정의 두 컬러로 구현될 수 있다. 여기서, 기준값은 RGB 컬러모델에서 R,G,B의 값의 평균값 또는 그 중 최소값이나 최대값, 혹은 HSV 컬러모델의 V 값, HSI 컬러모델의 I값 또는 CNYK 모델의 K값으로 설정될 수 있다.
전처리부(55)는 원본이미지와 이진화이미지를 입력받아 이진화 이미지를 기준으로 코드이미지 부분을 제외한 부분을 특정의 배경컬러로 처리하고, 이진화 이미지에서 배경컬러로 처리된 부분에 대응하는 상기 표준이미지 부분을 배경컬러로 표시하여 코드이미지 부분과 다른 부분을 구분한다. 예를 들어, 이진화 이미지의 가장자리에 위치한 픽셀들을 배경컬러로 표시한 다음 배경컬러로 표시된 픽셀들과 연결된 픽셀들을 배경컬러로 표시함으로써, 코드이미지 부분과 다른 부분을 구분할 수 있다. 여기서, 배경컬러는 코드이미지의 생성 시에 사용되지 않았던 컬러 중어느 하나로 설정된다. 특징점추출부(56)는 코드이미지 부분에 포함된 복수의 셀을 추출한 다음 각 셀에 표시된 표준컬러 또는 표준농담을 인식한다.
디코더(57)는 정보를 표시하기 위한 문자, 숫자 또는 기호 및 그에 대응하는 컬러 또는 농담과의 관계에 따라 코드이미지의 각 셀에서 인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성한다. 이 때, 각 셀에 속한 픽셀들의 컬러 또는 농담 중 가장 많은 분포를 갖는 컬러 또는 농담을 당해 셀의 컬러 또는 색상으로 인식하는 것이 바람직하다.
도 6의 흐름도를 참조하여 도 5에 도시된 코드인식장치의 동작을 정리하면 다음과 같다. 먼저, 코드이미지가 포함된 원본이미지를 획득한다(61). 원본이미지를 획득할 당시의 환경을 고려하여 환경변수를 설정하고, 원본이미지로부터 인식된 컬러나 농담을 환경변수에 의하여 보정한다(62). 보정된 컬러나 농담을 코드이미지의 생성시 사용된 복수의 표준컬러들 또는 표준 농담들로 변환하여 표준컬러들 또는 표준 농담들로 표시된 표준이미지를 생성한다(63).
원본이미지의 컬러 또는 농담을 소정의 기준값에 따라 두 가지의 컬러로 구분하여 이진화 이미지를 생성하며(64), 이진화 이미지를 기준으로 코드이미지 부분을 제외한 부분을 특정의 배경컬러로 표시한다(65). 이진화 이미지에서 배경컬러로 처리된 부분에 대응하는 표준이미지 부분을 배경컬러로 처리하여 코드이미지 부분과 다른 부분을 구분한다(66).
코드이미지 부분에 포함된 복수의 셀을 추출한 다음 각 셀에 표시된 표준컬러 또는 표준농담을 인식하고(67), 정보를 표시하기 위한 문자, 숫자 또는 기호 및그에 대응하는 컬러 또는 농담과의 관계에 따라 상기 코드이미지의 각 셀에서 인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성한다(68).
도 5에 도시된 코드인식장치의 기능 및 동작에 대하여 보다 상세히 설명하기로 한다.
이진화필터(54)는 흑백환경변수에 따라 원본이미지를 흑백이미지로 변환하며, 흑백이미지는 원본이미지에 표현된 객체의 판별을 용이하게 하고 작업속도를 향상시키는데 사용된다. 원본이미지의 각 픽셀에서의 밝기 값을 환경변수값과 비교하여 흑과 백의 픽셀값으로 출력하여 흑백이미지를 생성한다. 흑백환경변수란 Red, Green, Blue의 값을 합하여 3으로 나눈 평균값, 혹은 HSV 컬러모델의 Value(Brightness) 값 등 원본이미지에 표시된 컬러를 흑백화하기 위한 값 또는 값의 집합을 말한다. 원본이미지의 밝기를 전체적으로 볼 때 상대적으로 어두운 경우(이 경우는 원본이미지가 스캐닝될 때 주변 환경이 다소 어두웠거나 화상장치의 특성상 밝기가 낮게 표현된 경우라 할 수 있음)에는 흑백환경변수값을 낮게 설정하고 상대적으로 밝은 경우에는 흑백환경변수값을 높게 설정한다.
예를 들어, 원본이미지의 어느 픽셀의 RGB 값이 (100, 100, 100)이라면, 이 픽셀의 평균밝기는 100이 된다. 이 때 환경변수값이 80이라고 가정하면, 이 값보다 밝은 값을 갖는 픽셀은 흰색, 그렇지 않으면 흑색으로 인식한다.
컬러이미지를 흑백이미지로 이진화할 때, 하나의 기준값을 전체 픽셀에 대해 적용하여 흑백이미지를 생성하는 방법 이외에 전체 이미지를 여러 부분으로 나누어각 부분에 대해 기준값을 설정하고 이를 기준으로 그 부분에 속하는 픽셀에 대해 적용하여 흑백이미지를 생성할 수 있다. 즉, 국부 문턱값 방식은 이미지를 일정 크기의 단위블록들로 분할한 다음 각 단위블록에 속하는 픽셀들의 밝기 값을 평균하고 그 평균값을 흑백환경변수로서 설정한다. 각 픽셀의 밝기 값을 흑백환경변수값과 비교하여 그 단위블록에 속한 픽셀들을 흑백으로 이진화한다. 이 방식은 전체 이미지 중 부분적으로 특히 어둡거나 밝은 경우에 특히 효과적이다.
컬러이미지를 흑백이미지로 변환할 때 다중 문턱값 방식을 적용할 수 있다. 다중 문턱값 방식은 복수의 환경변수값을 이용하는 방식이다. 이미지에 속한 픽셀들의 밝기값을 밝기 별로 히스토그램을 구한 다음 각 밝기 별로 빈도를 구하여 빈도가 높은 밝기값과 빈도가 낮은 밝기값으로 구분한다. 통상적으로, 각 픽셀의 밝기 값은 특정의 밝기 값에 집중적으로 나타나는 것이 보통이다. 따라서, 빈도가 높은 밝기값 사이에 위치한 빈도가 낮은 밝기값을 기준으로 복수의 흑백환경변수를 설정한 다음 이들 흑백환경변수를 컬러이미지에 차례대로 적용한다. 그렇게 함으로써, 한 이미지 내에서 밝기의 변화가 심한 경우 복수의 흑백환경변수 중 가장 적당한 것을 선택하여 흑백이미지를 생성할 수 있다.
도 7은 원본이미지로부터 흑백이미지를 구한 결과를 나타내는 도면이다. 도 7(a)는 원본이미지를 나타내는데, 실제는 컬러 이미지이지만 도면 표현상의 한계로 그레이 이미지로 표시되어 있다. 도 7(b)는 픽셀의 R,G,B 값을 평균하고, 기준치를 128으로 하여 평균값과 기준치를 비교하여 흑백이미지를 구한 예이며, 도 7(c)는 기준치를 90으로 한 예이다. 도 7(d)는 국부 문턱값 방식을 적용한 예이다.도 7(e)는 픽셀의 R,G,B 값 중 최소값을 기준치 128과 비교하여 흑백이미지를 구한 예이며, 도 7(f)는 기준치를 90으로 한 예이다.
전처리부(55)는 컬러이미지와 흑백이미지를 입력받아 이들을 비교하여 코드이미지와 관련없는 불필요한 잡영을 컬러이미지와 흑백이미지에서 제거한다. 흑백이미지를 기준으로 잡영을 제거하는 과정은 배경이미지 제거단계 및 미세잡영 제거단계로 수행되며, 도 8을 참조하여 상세히 설명한다.
코드이미지 주위에는 코드이미지를 주변 영역과 분리시키기 위하여 흰색이나 휘도가 높은 잉여 여백이 존재하는 것이 보통이다. 배경이미지 제거단계에서는 잡영 이미지의 연결상태를 조사하여 이를 제거할 수 있다. 도 8은 배경이미지 제거과정을 설명하기 위한 도면이다. 먼저, 흑백이미지(도 8(a))의 가장자리에 위치한 잡영 이미지, 다시 말하면 가장자리 부분에 있는 픽셀들 중 흑색을 갖는 픽셀들을 특정의 농담이나 색상(코드이미지의 셀에는 표시되지 않는 컬러나 농담으로서 "배경컬러"라고 칭함)으로 표시(도 8(b))한 다음 전체 영역을 조사하여 그 잡영 이미지와 연결된 픽셀들도 배경컬러로 표시한다. 다시 말하면, 배경컬러로 된 픽셀과 연결된 흑색 픽셀들을 차례대로 검출하여 그들 픽셀들을 배경컬로로 표시한다(도 8(c)-(e) 참조). 더 이상 배경컬러를 갖는 픽셀들과 연결된 흑색 픽셀이 없으면 배경컬러로 표시된 부분은 잡영 이미지 영역으로 판별하고, 잡영 영역을 제외한 부분에서 흑색픽셀들로 구성된 부분을 코드이미지 영역으로 판별한다. 이 때, 연결상태의 조사를 위해서는 잡영 이미지에 속하는 픽셀을 중심으로 좌에서 우로 또는 우에서 좌로, 위에서 아래로 또는 아래에서 위로 여러 방향으로 동시에 탐색하는것이 효율적이다. 미세잡영(white/petter noise image) 제어단계에서는 잡영이미지가 제거된 이미지에서 각 픽셀들의 연결상태를 조사하여 픽셀들이 연결된 길이나 면적을 기준으로 일정 기준치 미만이면 이를 미세잡영으로 판단하고 이를 제거한다. 예를 들어, 일정한 크기를 갖는 부분에 흑색을 갖는 픽셀의 수가 기준치 미만이면 이를 잡영으로 판별할 수 있다. 이와 같이 하여, 흑백이미지에서 잡영이미지라고 판별된 부분과 흰색 픽셀 부분을 제외하면 구하고자 하는 코드이미지 부분이 되는 것이다.
흑백이미지에서 잡영을 제거한 결과를 컬러이미지에 적용하여 컬러이미지에서 코드이미지 영역을 추출한다. 예컨대, 흑백이미지에서 잡영 부분으로 판단된 위치(좌표)에 있는 픽셀은 컬러이미지에서도 잡영으로 판단하여 처리한다.
특징점 추출부(56)는 잡영이 제거된 컬러이미지 및/또는 흑백이미지를 입력받아 특정 객체의 이미지(코드이미지)를 구성하는 특징점과 그 영역을 탐색하며, 객체의 특징점에 의해 코드이미지의 종류와 위치 정보를 찾고, 오류 여부를 판별한다. 특징점 추출부(56)는 잡영이 제거된 이미지에서 코드이미지 영역을 찾기 위한 블록 분할 단계, 코드이미지 영역을 탐색하는 단계, 그리고 탐색된 코드이미지 영역으로부터 특징점을 추출하는 단계 및 코드 종류 판별 단계의 과정을 거쳐 수행된다. 도 9는 코드이미지의 각 셀에 표시된 표준컬러를 인식하는 과정을 설명하기 위한 흐름도이다.
배경컬러가 표시된 (또는 잡영이 제거된) 표준이미지가 입력(91)되면 표준이미지를 코드이미지 영역을 찾기 위해 표준이미지를 블록단위로 분할한다(92). 도10 (a)는 전체 이미지를 소정 크기의 블록들로 구분한 모습을 나타내는 도면이며, 흑색 사각형으로 표시된 부분은 코드이미지 영역임을 나타낸다. 이미지를 블록단위로 나눈 후 해당 블록에 속하는 의미있는 이미지(다시 말하면, 잡영 이미지로 판별되어 배경컬러로 표시된 부분을 제외한 부분의 이미지로서, 이는 곧 코드이미지 영역을 말함)의 크기를 검사하면 코드이미지의 위치를 추측할 수 있다. 따라서, 각 블록에 속한 코드이미지 영역이 가장 큰 블록의 중심점을 찾고 이를 기준으로 코드이미지 영역을 탐색하게 된다. 다시 말하면, 각 블록에서 배경영역이 아닌 코드이미지 영역에 속하는 픽셀의 수를 검출(93)하고, 코드이미지 영역에 속하는 픽셀의 수가 가장 많은 블록을 검출하고 그 블록의 중심점(또는 그 블록에 속한 코드이미지 영역의 중심점)을 검출한다(94).
전체 이미지 영역을 복수 개의 블록으로 분할한 다음 코드이미지 영역을 탐색하면 처리에 필요한 연산량을 줄일 수 있다. 코드이미지의 모양이 사각형이고 이 코드이미지의 위치를 대략적으로 알고 있으면 연산량을 줄일 수 있고 효율적이다. 도 10(a)의 경우에 각 블록에 있는 코드이미지 영역에 속하는 픽셀의 개수를 셈하면, 6블록에 가장 많고, 2, 3, 5 블록의 순이다. 따라서 코드이미지 영역에 속하는 픽셀이 존재하지 않거나 매우 소수인 1, 4, 7, 8, 9 블록을 제외하고, 2, 3, 5, 6 블록 영역에서만 이미지 연산을 수행하면 연산량을 많이 줄일 수 있다. 또한 도 10(b)와 같이 코드이미지가 공간적으로 서로 분리되어 있는 복수의 이미지로 구성되어 있는 경우 코드이미지 영역이 복수 개 존재하게 되는데 된다. 이 때, 먼저 가장 큰 크기를 갖는 것을 코드이미지 영역으로 가정하고 판별한 후 차후 크기 순서대로 조사하는 것이 바람직하다.
다음으로, 블록 분할 단계에서 찾은 중심점을 기준으로 탐색하여 코드이미지가 형성되어 있는 영역을 찾는 코드영역 탐색 단계가 수행된다. 중심점을 기준으로 표준이미지 전체를 탐색하여 코드이미지 영역이 될 수 있는 후보영역을 검출(95) 한 다음 후보영역에서 특징점을 검출하여 코드이미지의 모양과 종류를 판별한다(96). 이 단계에서는 후보영역의 외접점에 의해 형성되는 도형의 영역을 찾게 되는데, 한 예로 사각형 코드의 꼭지점들이 외접점을 이루는 사각형 영역이나 원형 영역 등이 되며, 그렇게 검출된 영역으로 된 이미지가 코드이미지가 된다.
도 11 (a-c)은 후보영역을 검출하는 과정을 설명하는 도면으로, 빗금으로 표시된 영역(104)은 실제로 구하고자 하는 코드이미지 영역을 나타내며, 그 영역을 포함하는 후보영역(103)을 검출한다. 이와 같은 과정은 전체 이미지 중에서 일부의 필요한 이미지 영역을 선정하여 그 일부 이미지에 대해서 향후 연산과정을 수행하도록 하여 처리과정을 단순화하기 위한 것이다. 후보영역은 코드이미지로 추정되는 이미지 영역의 극단점(예를 들어, x, y 좌표상에서 최소 및 최대의 값을 갖는 점)을 구하여 그 극단점으로 이루어지는 도형으로 결정된다. 예를 들어, 도 10(a)에서 선택된 블록 2, 3, 5 및 6 영역(102)에서 배경영역이 아닌 이미지에 속한 픽셀들 중 x 축상에서 최소 및 최대값과 y 축상의 최소 및 최대값을 갖는 좌표를 구하고 이들에 의하여 형성되는 도형(사각형)을 후보영역으로 결정한다.
후보영역 탐색방법으로는 축소 탐색 기법과 확장 탐색 기법이 있다. 확장 탐색 기법의 경우에는 중심점으로부터 바깥쪽으로 확장하면서 코드이미지에 해당하는 영역을 탐색하는 방법이다. 즉, 배경영역이 아닌 코드이미지 영역으로 판별되는 부분까지 확장하여 코드이미지 영역을 탐색한다. 축소 탐색 기법의 경우에는 바깥쪽에서 중심점으로 좁혀가면서 탐색하는 방법이다. 예를 들면 중심점에 가장 가까운 잉여여백(흰색과 같은 배경컬러로 표시된 배경영역)으로 이루어진 사각형 영역을 찾는 방법이 여기에 해당한다. 코드이미지가 사각형으로 형성된 경우, 후보 영역은 좌상 좌표와 우하 좌표로 표현되고, 원형의 경우 중심점 좌표와 반지름 거리 등의 정보로 표현된다.
특징점을 판별하는 방법으로는 대각선 검색 방법이나 경계선 검출 방법이 사용된다. 대각선 검색 방법(도 12(a) 참조)은 후보영역에서 임의의 기울기를 가진 선분을 이용하여 특징점을 찾는다. 한 예로서, 코드이미지가 사각형 모양으로 되어 있는 경우, 후보영역에서 사각형 코드이미지의 꼭지점을 찾기 위해서는 후보영역의 꼭지점에서 45도 각도를 갖는 대각선을 그려서 그 대각선과 외접하는 점으로 형성되는 사각형 영역을 찾는다. 도 12 (a)에 도시된 바와 같이, 후보영역의 각 꼭지점에서 시작하여 45도의 각도를 갖는 대각선을 이용하여 배경영역이 아닌 코드이미지 영역에 속하는 픽셀이 그 대각선과 만나는 점을 특징점으로 결정한다. 후보영역의 각 꼭지점에 대한 대각선은 반시계방향 또는 시계방향으로 일정한 방향성을 갖도록 한다.
도 12 (b)와 (c)는 대각선 탐색 방법을 보다 구체적으로 설명하기 위한 도면이다. 도 12(b)에서, ① 방향의 대각선으로 특징점을 검출하는 경우, 도면에 도시된 바와 같이 복수의 픽셀들이 대각선과 만나게 되면 가장 마지막으로 검출된픽셀(도면의 ㉠ 픽셀)을 특징점으로 결정한다. 다음으로 ②, ③, ④ 방향으로 위의 같은 과정을 수행하여 바라는 바의 코드이미지 영역의 특징점들을 검출한다. 한편, 대각선 검출 방법에 의하여 특징점을 검출한 경우 바라는 바의 특징점이 모두 검출되지 않을 수도 있다. 예를 들어, 사각형의 코드이미지인 경우에 네 개의 특징점이 추출되어야 하지만 그 특징점으로 세 개만이 추출되는 경우가 있다. 도 12(c)에서는, 특징점 개수가 만족하지 않는 경우, 수직 및 수평 방향의 검색과정을 더 수행하는 것을 보여준다. 다시 말하면, ⑤ ⑥ ⑦ ⑧방향으로 후보영역의 경계면에 가장 가까이 있는 코드이미지 영역의 픽셀을 검출한다. 대각선 검색방법에 의하여 정해진 특징점과 수직/수평 발향의 검색에 의하여 정해진 특징점이 서로 다를 수 있는데, 이 경우에는 두 좌표들의 평균값이나 그들 값 중 어느 하나를 선택하여 특징점으로 결정할 수 있다.
경계선 검출 방법(도 13 참조)은 후보영역에 포함된 코드이미지 영역의 외부 경계선을 추적하여 코드이미지의 꼭지점과 같은 특징점을 탐지한다. 먼저, 경계선을 이루는 좌표들을 후보좌표로 선정한다. 다음으로, 인접한 후보좌표들간의 기울기를 조사하여 좌표들간의 기울기 변화가 없으면 후보좌표에서 제거하는 방식(기울기 기반의 방식)을 적용한다. 예를 들어, 서로 인접한 후보좌표들이 (xi-1, yi-1), (xi, yi), (xi+1, yi+1)라고 할 때, a1= (yi-yi-1)/(xi-xi-1) 이고 a2= (yi+1-yi)/(xi+1-xi) 라고 하면, 만일 a1이 a2와 같거나 a1과 a2의 차이가 일정한 값보다 작으면 좌표 (xi, yi)는 특징점이 아닌 것으로 판단한다.
또한, 기울기 기반의 방식과 아울러 거리 기반의 방식을 적용할 수 있다. 인접한 특징점 후보좌표들의 거리가 일정거리보다 작으면 이들 좌표는 특징점 후보좌표에서 제거해 나간다. 즉, 서로 인접한 두 후보좌표 (xi-1, yi-1)와 (xi, yi)의 거리가 일정한 값보다 작으면 (xi, yi)를 후보좌표에서 제거한다.
이러한 특징점들을 이용하여 경계선의 폐쇄성 여부, 각도와 길이 등을 조사하여 코드이미지의 모양과 종류를 탐지할 수 있다. 한 예로 코드이미지의 종류로서 가로 및 세로 셀의 수가 5*5와 8*5로 이루어지는 두 가지 경우가 존재할 경우, 가로와 세로의 길이 비율에 따라 어느 종류의 코드이미지인 지를 구분할 수 있다. 즉, 가로와 세로의 길이 비율이 비슷하면 정사각형이라고 판단하고 이를 5*5 매트릭스 코드이미지로 인식할 수 있다. 반면 가로와 세로의 길이의 차이가 일정한 값 이상이면 이는 8*5 2차원 코드이미지로 판별할 수도 있다. 또한, 길이비율과 기울기를 이용하여 코드이미지를 구성하는 셀들의 중심점을 찾을 수 있다. 그리고 코드이미지의 크기나 면적, 길이비율을 고려하면 코드이미지를 제대로 추출되었는지를 판단할 수 있다.
도 14는 코드이미지 영역에 속한 셀들을 구분하고 셀별 중심점을 찾는 과정을 설명하는 도면이다. 도 14(a)를 참조하면, 본 예에서의 코드이미지는 4x4 사각형 이미지로 판별된 경우로서, 가로와 세로의 길이를 각각 4등분하여 셀들을 구분하고 도 14(b)와 같이 그 구분된 셀들의 중심점의 좌표를 구한다.
도 14(c)는 셀의 중심점을 찾는 알고리즘을 설명하기 위한 도면이다. 코드이미지의 한 변의 길이가 L이고 이를 X축과 Y축으로 수선을 내렸을 때에 X축의 길이는 W, Y축의 길이는 H라고 한다면, 그 변에 접한 i번째 셀의 중앙을 찾기 위한 점의 XCi, YCi위치는 다음 식과 같다. C는 컬러코드의 행이나 열에 위치한 셀의 개수이다.
위 수식에 의하면 코드의 변에 접한 점의 좌표를 얻게 되는데, 이를 대변에 있는 같은 순서의 점과 연결하면 두 개의 선분이 만나는 접점이 발생하며 이것을 각 셀의 중앙점이라고 판단하게 된다. 다만, 이 수식은 코드와 카메라의 접사각이 90도인 경우에 이상적이다. 따라서 접사각이 작으면(카메라를 뉘어서 찍는 경우 등) 코드이미지에 왜곡이 발생하므로 오차가 발생될 수 있다. 예를 들어 지나치게 접사각이 낮으면 원래 사각형의 코드임지가 사다리꼴 형태로 입력된다. 따라서 이를 보정하기 위하여 별도의 연산이 필요할 수도 있으나 대부분의 경우에는 위의 수식만으로도 충분하다. 특히 왜곡이 심하더라도 이미지의 크기가 크면 위의 수식이나 보조 수식으로 셀의 중앙 위치를 찾아낼 수 있다. 상기의 방법 뿐만 아니라 코드이미지 영역의 각 픽셀이 갖고 있는 컬러 분포를 고려하여 셀과 셀 간의경계선을 검출하거나 코드이미지를 생성할 때 삽입한 셀간 경계영역을 검출하여 이를 기초로 셀들을 구분할 수 있다.
디코더(57)는 특징점 추출부(56)에서 찾은 정보들을 이용하여 코드이미지를 디코딩하여 코드정보를 재생한다(68). 제어부(58)에서 입력된 컬러환경변수, 분석 종류(컬러 모델, 코드 종류 등)를 이용하여 각 셀의 컬러/농담의 판별 및 패리티정보 확인 등의 과정이 수행된다. 각 셀에 대해 검출된 색상값이나 농담값은 이에 대응하는 문자나 숫자, 기호로 대치한 후, 패리티 연산을 하여 이상유무를 판별하며, 이상이 없을 시 해당 문자나 숫자, 기호를 출력하고, 모든 셀에 대해 위와 같은 과정을 수행한 다음 각 셀에 대해 구한 문자나 숫자, 기호를 연결하여 목적하는 바의 코드정보를 생성한다.
특징점 추출부(56)로부터 입력된 셀별 중심 좌표에 의해 각 셀의 위치를 확인하고, 이를 중심으로 소정 개수의 픽셀들을 추출하여 색상을 판별한다. 표본 추출된 픽셀들의 평균값을 구한 후 RGB모델에 의해 컬러를 판별하거나 HSV에 의해서 색상 각도를 구한 후 해당 구간를 대표하는 컬러로 판별한다. RGB에 의한 컬러 판별의 경우, 이미 컬러환경변수에 의한 컬러변환 단계를 거친 컬러 이미지라면 표본 추출된 픽셀들의 RGB 요소 각각의 값은 0이나 255이므로 표준컬러 상태로 되어 있다. 따라서, 추출된 픽셀들 중 가장 빈도가 많은 컬러를 해당 셀의 컬러로 판별한다. 만일 표준컬러로 변환되지 않은 컬러 이미지가 입력된 경우에는 추출된 픽셀에 컬러환경 변수를 적용하여 표준컬러로 변환한 후 빈도수가 가장 많은 컬러를 해당 셀의 컬러로 판별한다. HSV에 의한 컬러 판별의 경우, 표본 추출된 픽셀의 RGB의 값을 HSV 변환식에 의해 변환한 후 판별한다.
3 그레이 레벨로 표시되는 코드이미지의 경우에는 각 셀들의 평균값을 구하고, 이들을 크기 순으로 정렬하면 정렬된 평균값의 분포에서 빈도가 많은 부분은 세 곳으로 집중되고 이 세 곳 사이에는 값이 존재하지 않거나 미세하게 존재하는 구간들이 존재하게 된다. 이 구간 사이의 거리가 가장 긴 곳에서 그 거리의 중심점 및 두 번째 긴 곳에서 그 거리의 중심점을 구한 다음 위의 두 중심점을 기준으로 각 셀들의 평균값과 비교하면 각 셀이 어느 레벨(흑색, 회색, 백색 중 어느 하나)에 속하는지를 판별할 수 있다. 예를 들어, 한 셀에서 표본 추출된 픽셀들의 R,G,B 값의 평균값을 구하여 이를 밝기 값으로 사용할 수 있다. 각 셀들에서 구한 밝기값들을 이용하여 그 분포를 조사하고, 흑색, 백색, 회색의 세 그룹으로 구분한 다음 각 셀의 밝기값과 가장 가까운 그룹의 농담으로 판별한다.
도 2e에 도시된 바와 같은 코드이미지인 경우, 코드이미지로부터 데이터영역 및 보조영역(패리티영역, 참조영역 및/또는 제어영역)을 구분하여 식별한다. 만일 참조영역이 있으면, 이를 이용하여 각 셀에 표현된 색채, 농담, 형상, 패턴을 판별하고, 패리티영역이 있으면 데이터셀의 오류 여부를 판별한다.
디코딩 과정에서는 코드이미지에 포함된 모양, 컬러, 패턴, 문자를 찾아내는 과정이 필요하며, 이외에도 왜곡된 이미지를 보정하는 과정이 요구된다. 여기서, RGB(Red, Green, Blue) 모델, HSV(Hue angle, Saturation, Value) 모델, CMY(Cyan, Magenta, Yellow) 모델, HLS(Hue angle, Lightness, Saturation) 모델 중 한가지 이상의 방법을 사용하여 컬러 판별이 가능하다.
디코딩을 위하여 데이터영역 및/또는 보조영역에 있는 각 셀들의 코드값을 추출한다. 만일 참조영역이 있으면, 참조셀의 색채 또는 농담 등을 검출하여, 데이터영역을 포함한 모든 영역의 정보를 해석하는 기준이 되는 기준색채(또는 농담), 기준형상 또는 기준패턴으로 삼는다. 데이터영역, 패리티영역 또는 제어영역에 있는 셀들의 색채, 형상 및 패턴을 검출한 다음 기준색채, 기준형상 및/또는 기준패턴과의 차이를 검출하여 각 셀들에 대한 코드값으로 변환한다. 만일 참조영역이 없다면 화상입력장치에 의하여 판독된 색상이나 농담, 형상 및/또는 패턴에 따라 각 셀들에 대응하는 코드값을 얻을 수 있다.
패리티영역이 있으면, 패리티영역으로부터 구한 코드값, 즉 패리티데이터에 의하여 코드이미지의 각 열과 행에 대한 패리티의 오류 여부를 검사하는 과정을 수행한다. 빈도수가 높은 조명환경에 최적화된 환경변수들 및 그에 대한 가중치를 미리 설정하여 디코딩 프로그램 내에 또는 데이터베이스에 저장해 두고, 사용자가 자신의 환경에 가장 알맞는 환경 환경변수를 선택하도록 할 수 있다. 패리티 오류가 발생하였다는 것은 현재 설정된 환경변수에 의한 컬러의 해독에 오류가 있다고 간주할 수 있으므로, 이런 경우 다른 환경변수를 적용하여 다시 컬러를 판독하게 하는 것이다. 필요하다면, 패리티데이터를 근거로 코드이미지의 방향이나 위치를 탐색할 수 있다.
상술한 과정에 의하여 구한 각 셀들의 코드값이 코드변환표(도 3b 참조)에 의하여 숫자, 기호를 포함하는 인식가능한 문자로 된 코드정보로 변환된다. 만일 코드이미지에 코드정보를 이용하여 사용할 수 있는 명령이나 서비스에 관한 사항을설정한 제어영역이 있으면, 제어영역에서 설정된 정보에 따라 명령이나 서비스를 제공하고, 그렇지 않으면 프로그램에서 지정된 기본 서비스를 제공한다.
도 15는 본 발명의 일 실시예에 대한 코드인식장치의 블록도이며, 도 16은 도 15에 도시된 장치의 동작을 설명하기 위한 흐름도이다. 도 5에 도시된 장치와 비교할 때, 도 5의 장치는 원본이미지에 대해 미리 컬러필터에 의하여 각 픽셀의 컬러를 표준컬러로 변환한 다음 이미지 처리를 수행하는 반면 도 15의 장치는 원본이미지에서 목적하는 바의 코드이미지 영역을 추출한 다음 컬러필터에 의하여 코드이미지 영역에 속하는 각 픽셀(또는 그 중에서 표본 추출된 픽셀)의 컬러를 환경변수를 이용하여 표준컬러로 변환하는 점에서 차이가 있으며, 그 이외의 기능이나 동작은 기본적으로 유사하며, 메모리는 편의상 도시되지 않았다. 이하에서는 도 5의 장치와 차이나는 부분에 대하여 설명하며, 나머지 설명되지 않은 부분은 처리순서 내지 동작상 문제가 없는 이상 서로 동일하게 적용될 수 있다.
도 15에 도시된 코드인식장치는 이미지획득부(151)에서 코드이미지가 포함된 원본이미지를 획득하는 한 다음 이진화변환부(153)에서 원본이미지의 컬러 또는 농담을 소정의 기준값에 따라 두 가지의 컬러로 구분하여 이진화 이미지를 생성한다.
전처리부(154)는 이진화 이미지를 기준으로 코드이미지 부분을 제외한 부분을 특정의 배경컬러로 처리하고, 이진화 이미지에서 배경컬러로 처리된 부분에 대응하는 원본이미지 부분을 배경컬러로 표시하여 코드이미지 부분과 다른 부분을 구분한다. 특징점 추출부(155)는 코드이미지 부분에 포함된 복수의 셀을 추출한 다음 각 셀에 표시된 컬러 또는 농담을 인식한다.
컬러필터(156)는 원본이미지를 획득할 당시의 환경을 고려하여 환경변수를 설정하며, 코드이미지 부분에 포함된 각 셀에 대해 인식된 컬러나 농담을 환경변수에 의하여 보정한 다음 보정된 컬러나 농담을 코드이미지의 생성시 사용된 복수의 표준컬러들 또는 표준농담들로 변환하여 표준컬러들 또는 표준 농담들로 표시된 표준이미지를 생성한다.
디코더(157)는 정보를 표시하기 위한 문자, 숫자 또는 기호 및 그에 대응하는 컬러 또는 농담과의 관계에 따라 코드이미지의 각 셀에서 인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성한다.
도 16을 참조하여 도 15에 도시된 장치의 동작을 설명한다. 코드이미지가 포함된 원본이미지를 획득(161)한 다음 원본이미지의 컬러 또는 농담을 소정의 기준값에 따라 두 가지의 컬러로 구분하여 이진화 이미지를 생성한다(162). 이진화 이미지를 기준으로 코드이미지 부분을 제외한 부분을 특정의 배경컬러로 표시하고(163), 이진화 이미지에서 배경컬러로 처리된 부분에 대응하는 원본이미지 부분을 배경컬러로 처리하여 코드이미지 부분과 다른 부분을 구분한다(164). 코드이미지 부분에 포함된 복수의 셀을 추출한 다음 각 셀에 표시된 컬러 또는 농담을 인식(165)한 다음 원본이미지를 획득할 당시의 환경을 고려하여 환경변수를 설정하고, 코드이미지 부분에 포함된 각 셀에 대해 인식된 컬러나 농담을 환경변수에 의하여 보정한다(166). 보정된 컬러나 농담을 코드이미지의 생성시 사용된 복수의 표준컬러들 또는 표준농담들로 변환하여 각 셀별 컬러나 농담을 인식하며, 필요하다면 표준컬러들 또는 표준 농담들로 표시된 표준이미지를 생성한다(167). 본 실시예에서는 이미 각 셀의 중심점 위치와 코드 종류를 알고 있는 상태이므로 단지 각 셀의 중심점을 기준으로 소정의 픽셀을 표본 추출하고 이들 픽셀들에 대해서만 환경변수를 적용하여 그 셀에 대한 표준컬러나 표준농담을 판별할 수 있다. 그리고, 그렇게 판별된 각 셀별 표준컬러나 표준농담에 관한 데이터를 메모리에 저장해 두고 코드정보 생성과정에서 이를 이용하는 것이 바람직하다. 그렇게 함으로써, 표준이미지를 생성하는데 필요한 과정을 생략할 수 있다.
정보를 표시하기 위한 문자, 숫자 또는 기호 및 그에 대응하는 컬러 또는 농담과의 관계에 따라 코드이미지의 각 셀에서 인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성한다(168).
본 발명의 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플라피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.
상술한 바와 같이, 본 발명에 따른 코드인식장치 및 그 방법에 의하면 컬러나 농담으로 소정의 정보가 표시된 코드이미지를 입력받아 그 코드이미지가 입력된환경에 관계없이 정확하게 원래의 컬러나 농담을 판별하여 바라는 바의 코드정보를 얻을 수 있다.

Claims (16)

  1. 코드이미지가 포함된 원본이미지를 획득하는 이미지획득부;
    상기 원본이미지로부터 인식된 컬러나 농담을 환경변수에 의하여 보정한 다음 상기 보정된 컬러나 농담을 코드이미지의 생성시 사용된 복수의 표준컬러들 또는 표준 농담들로 변환하여 표준컬러들 또는 표준 농담들로 표시된 표준이미지를 생성하는 컬러변환부;
    상기 원본이미지의 컬러 또는 농담을 소정의 기준값에 따라 두 가지의 컬러로 구분하여 이진화 이미지를 생성하는 이진화변환부;
    상기 이진화 이미지를 기준으로 코드이미지 부분을 제외한 부분을 추출한 다음 상기 표준이미지에서 그에 대응하는 부분을 배경컬러로 표시하여 코드이미지 부분과 다른 부분을 구분하고, 상기 코드이미지 부분에 포함된 복수의 셀을 추출한 다음 상기 각 셀에 표시된 표준컬러 또는 표준농담을 인식하는 이미지처리부; 및
    정보를 표시하기 위한 문자, 숫자 또는 기호 및 그에 대응하는 컬러 또는 농담과의 관계에 따라 상기 코드이미지의 각 셀에서 인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성하는 코드변환부;를 포함하는 것을 특징으로 하는 코드인식장치.
  2. 코드이미지가 포함된 원본이미지를 획득하는 이미지획득부;
    상기 원본이미지의 컬러 또는 농담을 소정의 기준값에 따라 두 가지의 컬러로 구분하여 이진화 이미지를 생성하는 이진화변환부;
    상기 이진화 이미지를 기준으로 코드이미지 부분을 제외한 부분을 추출한 다음 상기 원본이미지에서 그에 대응하는 부분을 배경컬러로 표시하여 코드이미지 부분과 다른 부분을 구분하고, 상기 코드이미지 부분에 포함된 복수의 셀을 추출한 다음 상기 각 셀에 표시된 컬러 또는 농담을 인식하는 이미지처리부;
    상기 코드이미지 부분에 포함된 각 셀에 대해 인식된 컬러나 농담을 환경변수에 의하여 보정한 다음 상기 보정된 컬러나 농담을 코드이미지의 생성시 사용된 복수의 표준컬러들 또는 표준농담들로 변환하는 컬러변환부; 및
    정보를 표시하기 위한 문자, 숫자 또는 기호 및 그에 대응하는 컬러 또는 농담과의 관계에 따라 상기 코드이미지의 각 셀에서 인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성하는 코드변환부;를 포함하는 것을 특징으로 하는 코드인식장치.
  3. 제1항 또는 제2항에 있어서, 상기 컬러변환부의 환경변수는 상기 원본이미지가 입력된 환경을 고려하여 상기 원본이미지의 컬러나 농담을 판별하기 위해 설정되는 파라미터로서, 상기 컬러변환부는 상기 원본이미지로부터 인식된 각 픽셀의 값을 상기 환경변수에 의하여 보정하는 것을 특징으로 하는 코드인식장치.
  4. 제1항 또는 제2항에 있어서, 상기 이진화변환부의 소정의 기준값은 RGB 컬러모델에서 R,G,B의 값의 평균값 또는 그중 최소값이나 최대값, 혹은 HSV 컬러모델의 V의 값, HSI 컬러모델의 I값 또는 CNYK 모델의 K값으로 설정되는 것을 특징으로 하는 코드인식장치.
  5. 제1항 또는 제2항에 있어서, 상기 이미지처리부는 상기 이진화 이미지의 가장자리에 위치한 픽셀들을 배경컬러로 표시한 다음 상기 배경컬러로 표시된 픽셀들과 연결된 픽셀들을 상기 배경컬러로 표시하여 코드이미지 부분과 다른 부분을 구분하는 것을 특징으로 하는 코드인식장치.
  6. 제1항 또는 제2항에 있어서, 상기 이미지처리부는
    상기 배경컬러에 의하여 코드이미지 부분과 다른 부분이 구분된 이미지를 입력받아 상기 이미지를 복수의 블록으로 구분하고 각 단위 블록에서 배경컬러가 아닌 컬러나 농담을 갖는 영역을 검출한 다음 상기 블록들 중 상기 영역이 가장 큰 블록을 선택하고, 그 블록에 포함된 코드이미지영역의 중심점을 검출하며, 상기 중심점을 기준으로 상기 전체 이미지를 탐색하여 배경컬러가 아닌 컬러나 농담을 갖는 영역을 코드이미지 영역으로 검출하는 것을 특징으로 하는 코드인식장치.
  7. 제1항 또는 제2항에 있어서, 상기 코드변환부는 각 셀에 속한 픽셀들의 컬러 또는 농담 중 가장 많은 분포를 갖는 컬러 또는 농담을 당해 셀의 컬러 또는 색상으로 인식하는 것을 특징으로 하는 코드인식장치.
  8. 코드이미지가 포함된 원본이미지를 획득하는 단계;
    상기 원본이미지로부터 인식된 컬러나 농담을 환경변수에 의하여 보정하는 단계;
    상기 보정된 컬러나 농담을 코드이미지의 생성시 사용된 복수의 표준컬러들 또는 표준 농담들로 변환하여 표준컬러들 또는 표준 농담들로 표시된 표준이미지를 생성하는 단계;
    상기 원본이미지의 컬러 또는 농담을 소정의 기준값에 따라 두 가지의 컬러로 구분하여 이진화 이미지를 생성하는 단계;
    상기 이진화 이미지를 기준으로 코드이미지 부분을 제외한 부분을 추출하고 상기 표준이미지에서 그에 대응하는 부분을 배경컬러로 처리하여 코드이미지 부분과 다른 부분을 구분하는 단계;
    상기 코드이미지 부분에 포함된 복수의 셀을 추출한 다음 상기 각 셀에 표시된 표준컬러 또는 표준농담을 인식하는 단계; 및
    정보를 표시하기 위한 문자, 숫자 또는 기호 및 그에 대응하는 컬러 또는 농담과의 관계에 따라 상기 코드이미지의 각 셀에서 인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성하는 단계;를 포함하는 것을 특징으로 하는 코드인식방법.
  9. 코드이미지가 포함된 원본이미지를 획득하는 단계;
    상기 원본이미지의 컬러 또는 농담을 소정의 기준값에 따라 두 가지의 컬러로 구분하여 이진화 이미지를 생성하는 단계;
    상기 이진화 이미지를 기준으로 코드이미지 부분을 제외한 부분을 추출하고 상기 원본이미지에서 그에 대응하는 부분을 배경컬러로 처리하여 코드이미지 부분과 다른 부분을 구분하는 단계;
    상기 코드이미지 부분에 포함된 복수의 셀을 추출한 다음 상기 각 셀에 표시된 컬러 또는 농담을 인식하는 단계;
    상기 코드이미지 부분에 포함된 각 셀에 대해 인식된 컬러나 농담을 환경변수에 의하여 보정하는 단계;
    상기 보정된 컬러나 농담을 코드이미지의 생성시 사용된 복수의 표준컬러들 또는 표준농담들로 변환하는 단계; 및
    정보를 표시하기 위한 문자, 숫자 또는 기호 및 그에 대응하는 컬러 또는 농담과의 관계에 따라 상기 코드이미지의 각 셀에서 인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성하는 단계;를 포함하는 것을 특징으로 하는 코드인식방법.
  10. 제8항 또는 제9항 중 어느 한 항에 기재된 방법을 실현하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  11. 코드이미지가 포함된 원본이미지를 획득하는 이미지획득부;
    상기 원본이미지에서 상기 코드이미지를 추출하고, 상기 코드이미지에 포함된 복수의 셀에 표시된 컬러 또는 농담을 인식하는 이미지처리부;
    정보를 표시하기 위한 문자, 숫자 또는 기호 및 그에 대응하는 컬러 또는 농담과의 관계가 설정되어 있는 코드설정부;
    상기 코드설정부에서 설정된 관계에 따라 코드이미지의 각 셀에 표시된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호를 추출하여 코드정보를 생성하는 코드변환부;를 포함하는 것을 특징으로 하는 코드인식장치.
  12. 제11항에 있어서, 상기 이미지처리부는
    상기 원본이미지를 획득할 당시의 환경을 고려하여 환경변수를 설정하고, 상기 원본이미지로부터 인식된 컬러나 농담을 상기 환경변수에 의하여 보정하는 것을 특징으로 하는 코드인식장치.
  13. 제11항에 있어서, 상기 이미지처리부는
    상기 원본이미지에서 배경영상 부분이 제외된 코드이미지영역을 추출하여 코드이미지의 모양과 종류를 판별하고, 이를 기초로 상기 코드이미지영역에 포함된 셀들을 구분하여 판별하는 것을 특징으로 하는 코드인식장치.
  14. 제11항에 있어서, 상기 이미지처리부는
    상기 원본이미지가 입력된 상황에서의 밝기 정도에 따라 설정된 환경변수를 기준으로 상기 원본이미지를 이진화이미지로 변환하고, 상기 이진화이미지에서 배경영상 부분을 추출한 다음 상기 원본이미지에서 그에 대응하는 부분을 배경컬러로 처리하여 코드이미지 부분과 다른 부분을 구분하여, 상기 원본이미지에서 코드이미지 영역을 추출하는 것을 특징으로 하는 코드인식장치.
  15. 코드이미지가 포함된 원본이미지를 입력받는 단계;
    상기 원본이미지에 포함된 배경영상을 검출한 다음 배경영상 부분이 제외된 코드이미지영역을 추출하는 단계;
    상기 코드이미지영역으로부터 코드이미지의 모양과 종류를 판별하는 단계;
    상기 코드이미지영역에 포함된 셀들을 구분하여 판별하는 단계;
    상기 각 셀에 표시된 컬러 또는 농담을 인식하는 단계; 및
    각 셀에 대해 인식된 컬러 또는 농담으로부터 그에 대응하는 문자, 숫자 또는 기호로 변환하여 코드정보를 생성하는 단계;를 포함하는 것을 특징으로 하는 코드인식방법.
  16. 제15항에 기재된 방법을 실현하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020010068378A 2001-11-03 2001-11-03 코드인식을 위한 장치 및 그 방법 KR100339691B1 (ko)

Priority Applications (10)

Application Number Priority Date Filing Date Title
KR1020010068378A KR100339691B1 (ko) 2001-11-03 2001-11-03 코드인식을 위한 장치 및 그 방법
PCT/KR2002/000886 WO2003041014A1 (en) 2001-11-03 2002-05-13 Apparatus and method for recognizing code
EP02802741A EP1456816B1 (en) 2001-11-03 2002-05-13 Apparatus and method for recognizing code
CNB028215982A CN1310187C (zh) 2001-11-03 2002-05-13 识别码的设备和方法
JP2003542972A JP4016342B2 (ja) 2001-11-03 2002-05-13 コード認識のための装置及びその方法
ES02802741T ES2303566T3 (es) 2001-11-03 2002-05-13 Aparato y metodo para reconocer un codigo.
AT02802741T ATE387676T1 (de) 2001-11-03 2002-05-13 Vorrichtung und verfahren zur erkennung von code
DE60225329T DE60225329T2 (de) 2001-11-03 2002-05-13 Vorrichtung und verfahren zur erkennung von code
US10/492,305 US6981644B2 (en) 2001-11-03 2002-05-13 Apparatus and method for recognizing code
HK05105479A HK1072826A1 (en) 2001-11-03 2005-06-29 Apparatus and method for recognizing code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010068378A KR100339691B1 (ko) 2001-11-03 2001-11-03 코드인식을 위한 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20010113578A true KR20010113578A (ko) 2001-12-28
KR100339691B1 KR100339691B1 (ko) 2002-06-07

Family

ID=19715674

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010068378A KR100339691B1 (ko) 2001-11-03 2001-11-03 코드인식을 위한 장치 및 그 방법

Country Status (10)

Country Link
US (1) US6981644B2 (ko)
EP (1) EP1456816B1 (ko)
JP (1) JP4016342B2 (ko)
KR (1) KR100339691B1 (ko)
CN (1) CN1310187C (ko)
AT (1) ATE387676T1 (ko)
DE (1) DE60225329T2 (ko)
ES (1) ES2303566T3 (ko)
HK (1) HK1072826A1 (ko)
WO (1) WO2003041014A1 (ko)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100702292B1 (ko) * 2005-05-03 2007-03-30 (주)아이미디어아이앤씨 이미지 코드 및 그의 인식방법과 인식장치
KR100920663B1 (ko) * 2009-01-22 2009-10-14 (주) 이토프 2차원 코드의 인식 방법
US8355571B2 (en) 2010-02-17 2013-01-15 Samsung Electronics Co., Ltd Apparatus and method for generating image for character region extraction
WO2013055069A1 (ko) * 2011-10-10 2013-04-18 주식회사 예원커뮤니케이션 큐알코드 자동 인식 장치 및 방법
WO2017188470A1 (ko) * 2016-04-26 2017-11-02 예스튜디오 주식회사 스마트 펜을 이용한 그림 그리기 방법 및 시스템
KR102214421B1 (ko) * 2020-04-20 2021-02-09 조영근 절대 시간을 이용한 영상 편집 시스템 및 그 방법
KR102490756B1 (ko) * 2022-08-08 2023-01-27 미러 주식회사 암호화된 문서 컨텐츠를 제공하는 서버와 그 문서 컨텐츠의 뷰어 디바이스

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4189506B2 (ja) * 2000-06-09 2008-12-03 コニカミノルタビジネステクノロジーズ株式会社 画像処理のための装置、方法及び記録媒体
US8682077B1 (en) 2000-11-28 2014-03-25 Hand Held Products, Inc. Method for omnidirectional processing of 2D images including recognizable characters
JP2004165863A (ja) * 2002-11-12 2004-06-10 Murata Mach Ltd カラー画像送信装置
JP3996520B2 (ja) * 2003-01-30 2007-10-24 株式会社デンソーウェーブ 二次元情報コードおよびその生成方法
JP3880553B2 (ja) * 2003-07-31 2007-02-14 キヤノン株式会社 画像処理方法および装置
JP4205554B2 (ja) * 2003-11-11 2009-01-07 富士フイルム株式会社 帳票処理装置
TWI249141B (en) * 2004-07-12 2006-02-11 Sunplus Technology Co Ltd Document having index data and system for reading document having index data
US20060081711A1 (en) * 2004-09-30 2006-04-20 Junxiang Zhao Color-identifying system for colored barcode and a method thereof
US7751629B2 (en) * 2004-11-05 2010-07-06 Colorzip Media, Inc. Method and apparatus for decoding mixed code
KR101035762B1 (ko) * 2005-01-07 2011-05-20 삼성전자주식회사 개선된 패턴 데이터의 인식 장치 및 방법
US20060180672A1 (en) * 2005-02-11 2006-08-17 Chu Lonny L Method and system for multi-dimensional symbol coding system
JP4393411B2 (ja) * 2005-03-29 2010-01-06 株式会社東芝 画像処理装置、画像処理プログラムおよび画像処理方法
KR100703527B1 (ko) * 2005-07-12 2007-04-03 삼성전자주식회사 핫코드 인식률 향상을 위한 이미지 전처리 방법 및 그 장치
DE102005034374B3 (de) * 2005-07-22 2007-03-01 Siemens Ag Verfahren zur automatischen Erstellung einer Hintergrundmaske bei Bildern mit verrauschten Hintergrundbereichen, Anwendungen dazu sowie ein Kernspintomographiegerät zur Durchführung der Verfahren und Computersoftwareprodukt
EP1826705A1 (de) 2006-02-25 2007-08-29 F.Hoffmann-La Roche Ag Analytisches Verbrauchsmittel und Anordnung zum Auslesen von Informationen
US8789756B2 (en) * 2006-02-25 2014-07-29 Roche Diagnostics Operations, Inc. Test element coding apparatuses, systems and methods
KR100914515B1 (ko) 2006-06-23 2009-09-02 주식회사 칼라짚미디어 색상 기반 이미지 코드의 색상 판별 방법
SG138575A1 (en) * 2006-06-23 2008-01-28 Colorzip Media Inc Method of classifying colors of color based image code
EP2178031B1 (en) * 2006-07-19 2013-01-09 B-Core Inc. Optical code recognition apparatus, optical code and recognition method.
WO2009060942A1 (ja) * 2007-11-09 2009-05-14 B-Core Inc. 光学式認識コード及びそのマーキング方法及びその読み取り方法、並びに、光学式認識コードをマーキングした物品、並びに、色彩認識方法及びプログラム、並びに、色彩配列による自動認識コード及びそれが付された物品
US8172145B2 (en) * 2007-11-20 2012-05-08 Datalogic ADC, Inc. Enhanced virtual scan line processing
KR101428054B1 (ko) 2007-12-13 2014-08-07 주식회사 엘지씨엔에스 매체이미지 검출장치 및 방법, 그리고 그를 이용한매체취급시스템
JP4910011B2 (ja) * 2009-03-24 2012-04-04 ビーコア株式会社 光学式シンボル及びそれを付した物品
GB0812266D0 (en) * 2008-07-04 2008-08-13 Tyco Electronics Raychem Nv Improvements in or relating to an optical fibre organiser tray
KR100963240B1 (ko) 2008-08-07 2010-06-10 광주과학기술원 컬러 마커 인식 방법 및 장치
US8554579B2 (en) 2008-10-13 2013-10-08 Fht, Inc. Management, reporting and benchmarking of medication preparation
US8459556B2 (en) * 2009-01-09 2013-06-11 Datalogic ADC, Inc. Prioritized virtual scan line processing
JP4499825B1 (ja) * 2009-09-30 2010-07-07 広行 遠藤 二次元コード,二次元コードリーダおよびプログラム
EP2485180A4 (en) 2009-09-30 2017-04-26 Shift Co. Ltd. Two-dimensional code, two-dimensional code reader, and program
WO2011087030A1 (ja) * 2010-01-18 2011-07-21 独立行政法人産業技術総合研究所 二次元コード、コード生成システム、プログラム、印刷物
US8505823B2 (en) * 2010-06-30 2013-08-13 International Business Machine Corporation Noise removal from color barcode images
JP4724801B1 (ja) * 2010-07-30 2011-07-13 株式会社シフト 二次元コードリーダおよびプログラム
CN102646187B (zh) * 2011-02-20 2016-08-03 深圳市心艺来文化有限公司 彩色图形编码及识别方法
FR2973264B3 (fr) * 2011-04-01 2013-05-31 Envac Optibag Ab Procede et systeme pour identifier des conteneurs de dechets sur la base d'un motif
NO20110508A1 (no) * 2011-04-01 2012-09-03 Envac Optibag Ab Fremgangsmåte og system for identifisering av avfallsbeholdere på grunnlag av mønster
CN106267472B (zh) 2011-07-15 2019-08-30 赛诺菲-安万特德国有限公司 带机电式驱动机构的药物递送装置
WO2013010886A2 (en) * 2011-07-15 2013-01-24 Sanofi-Aventis Deutschland Gmbh A drug delivery device
KR101200378B1 (ko) 2011-08-30 2012-11-12 인하대학교 산학협력단 국소 각 위상을 이용한 강건한 텍스처 특징 추출 방법
US9111186B2 (en) 2011-10-12 2015-08-18 University Of Rochester Color barcodes for mobile applications: a per channel framework
US8915440B2 (en) * 2011-12-23 2014-12-23 Konica Minolta Laboratory U.S.A., Inc. Four dimensional (4D) color barcode for high capacity data encoding and decoding
US8931700B2 (en) 2011-12-23 2015-01-13 Konica Minolta Laboratory U.S.A., Inc. Four dimensional (4D) color barcode for high capacity data encoding and decoding
JP5904889B2 (ja) * 2012-06-29 2016-04-20 シャープ株式会社 情報処理装置
JP5907823B2 (ja) * 2012-06-29 2016-04-26 シャープ株式会社 加熱調理器
KR101695119B1 (ko) 2012-10-26 2017-01-23 백스터 코포레이션 잉글우드 의료 투여분 조제 시스템을 위한 개선된 이미지 취득
US9375079B2 (en) 2012-10-26 2016-06-28 Baxter Corporation Englewood Work station for medical dose preparation system
JP5822411B2 (ja) * 2013-08-12 2015-11-24 株式会社アポロジャパン 画像情報のコード変換装置、画像情報のコード変換方法、画像コードを用いた画像関連情報提供システム、画像情報のコード変換プログラム、及びそのプログラムを記録した記録媒体
GB2518443A (en) * 2013-09-24 2015-03-25 Ibm Method for detecting phishing of a matrix barcode
US10235596B2 (en) * 2013-11-06 2019-03-19 Research & Business Foundation Sungkyunkwan University System and method for transferring data using image code, outputting image code on display device, and decoding image code
EP4354450A2 (en) 2014-06-30 2024-04-17 Baxter Corporation Englewood Managed medical information exchange
US11575673B2 (en) 2014-09-30 2023-02-07 Baxter Corporation Englewood Central user management in a distributed healthcare information management system
US11107574B2 (en) 2014-09-30 2021-08-31 Baxter Corporation Englewood Management of medication preparation with formulary management
CN104361381A (zh) * 2014-11-17 2015-02-18 深圳市华鑫精工机械技术有限公司 一种双界面卡和双界面卡的封装方法
US10818387B2 (en) 2014-12-05 2020-10-27 Baxter Corporation Englewood Dose preparation data analytics
TWI533227B (zh) * 2015-02-26 2016-05-11 楊東華 色彩編解碼方法與系統
JP2018507487A (ja) 2015-03-03 2018-03-15 バクスター・コーポレーション・イングルウッドBaxter Corporation Englewood アラート統合を伴う薬局ワークフロー管理
US9805662B2 (en) * 2015-03-23 2017-10-31 Intel Corporation Content adaptive backlight power saving technology
USD790727S1 (en) 2015-04-24 2017-06-27 Baxter Corporation Englewood Platform for medical dose preparation
US10628736B2 (en) * 2015-09-24 2020-04-21 Huron Technologies International Inc. Systems and methods for barcode annotations for digital images
WO2017082607A1 (en) 2015-11-09 2017-05-18 Samsung Electronics Co., Ltd. Electronic device and operating method of the same
KR20170054900A (ko) * 2015-11-10 2017-05-18 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
MA39233B1 (fr) * 2016-07-27 2018-11-30 Univ Abdelmalek Essaadi Tetouan Procédé d'identification à distance du code qr au moyen d'une caméra.
US9959586B1 (en) * 2016-12-13 2018-05-01 GoAnimate, Inc. System, method, and computer program for encoding and decoding a unique signature in a video file as a set of watermarks
JP2018136903A (ja) * 2017-02-21 2018-08-30 エンゼルプレイングカード株式会社 遊戯用代用貨幣の枚数計測システム
CA3118014A1 (en) 2018-11-05 2020-05-14 Hamid Reza Tizhoosh Systems and methods of managing medical images
US10896306B2 (en) * 2019-04-29 2021-01-19 Ncr Corporation Barcode scanner optimization
CN111046996B (zh) * 2019-11-27 2023-08-04 湖南省科腾信安智能科技有限公司 一种彩色qr码生成和识别方法
US11610395B2 (en) 2020-11-24 2023-03-21 Huron Technologies International Inc. Systems and methods for generating encoded representations for multiple magnifications of image data
US11934554B2 (en) 2021-05-17 2024-03-19 Bank Of America Corporation Information security by preventing unauthorized data access
CN116778195B (zh) * 2023-08-16 2023-11-24 北京华源技术有限公司 一种基于颜色码的设备识别方法和系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3894217A (en) * 1973-12-27 1975-07-08 Nippon Electric Co Device for discriminating color coded articles
US5343028A (en) 1992-08-10 1994-08-30 United Parcel Service Of America, Inc. Method and apparatus for detecting and decoding bar code symbols using two-dimensional digital pixel images
US5352878A (en) * 1993-01-29 1994-10-04 United Parcel Service Of America, Inc. Method and apparatus for decoding bar code symbols using independent bar and space analysis
CN1179752A (zh) * 1995-03-31 1998-04-22 基维软件程序有限公司 机器可读的标签
JP3676887B2 (ja) * 1996-08-08 2005-07-27 理想科学工業株式会社 カラー2次元コード及びカラー2次元コードの作成装置
JPH11168616A (ja) * 1997-12-03 1999-06-22 Toshiba Corp 画像情報処理方法および画像情報処理装置
JP4015753B2 (ja) * 1998-06-11 2007-11-28 株式会社東芝 画像情報処理方法
GB9806767D0 (en) * 1998-03-31 1998-05-27 Philips Electronics Nv Pixel colour valve encoding and decoding
JP3459770B2 (ja) * 1998-04-10 2003-10-27 キヤノン株式会社 画像読取装置および方法、記録媒体
US6081739A (en) * 1998-05-21 2000-06-27 Lemchen; Marc S. Scanning device or methodology to produce an image incorporating correlated superficial, three dimensional surface and x-ray images and measurements of an object
US7023587B2 (en) * 1999-11-12 2006-04-04 Nikon Corporation Image scanning apparatus, recording medium which stores image scanning programs, and data structure
WO2001082593A1 (en) * 2000-04-24 2001-11-01 The Government Of The United States Of America, As Represented By The Secretary Of The Navy Apparatus and method for color image fusion

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100702292B1 (ko) * 2005-05-03 2007-03-30 (주)아이미디어아이앤씨 이미지 코드 및 그의 인식방법과 인식장치
KR100920663B1 (ko) * 2009-01-22 2009-10-14 (주) 이토프 2차원 코드의 인식 방법
US8355571B2 (en) 2010-02-17 2013-01-15 Samsung Electronics Co., Ltd Apparatus and method for generating image for character region extraction
US8908975B2 (en) 2011-07-21 2014-12-09 Yewon Communication Co., Ltd. Apparatus and method for automatically recognizing a QR code
WO2013055069A1 (ko) * 2011-10-10 2013-04-18 주식회사 예원커뮤니케이션 큐알코드 자동 인식 장치 및 방법
WO2017188470A1 (ko) * 2016-04-26 2017-11-02 예스튜디오 주식회사 스마트 펜을 이용한 그림 그리기 방법 및 시스템
KR102214421B1 (ko) * 2020-04-20 2021-02-09 조영근 절대 시간을 이용한 영상 편집 시스템 및 그 방법
KR102490756B1 (ko) * 2022-08-08 2023-01-27 미러 주식회사 암호화된 문서 컨텐츠를 제공하는 서버와 그 문서 컨텐츠의 뷰어 디바이스

Also Published As

Publication number Publication date
DE60225329T2 (de) 2009-02-19
EP1456816A4 (en) 2005-02-02
JP2005509223A (ja) 2005-04-07
DE60225329D1 (de) 2008-04-10
ES2303566T3 (es) 2008-08-16
EP1456816A1 (en) 2004-09-15
HK1072826A1 (en) 2005-09-09
KR100339691B1 (ko) 2002-06-07
EP1456816B1 (en) 2008-02-27
WO2003041014A1 (en) 2003-05-15
CN1310187C (zh) 2007-04-11
CN1578969A (zh) 2005-02-09
ATE387676T1 (de) 2008-03-15
US6981644B2 (en) 2006-01-03
JP4016342B2 (ja) 2007-12-05
US20050001033A1 (en) 2005-01-06

Similar Documents

Publication Publication Date Title
KR100339691B1 (ko) 코드인식을 위한 장치 및 그 방법
JP5269123B2 (ja) カラーベースのイメージコードの色判別方法
US6771813B1 (en) Image processing apparatus and pattern extraction apparatus
JP4515999B2 (ja) 混合コードのデコーディング方法及びその装置、記録媒体
US6865290B2 (en) Method and apparatus for recognizing document image by use of color information
KR100653885B1 (ko) 혼합코드 디코딩 방법 및 그 장치
KR100927528B1 (ko) 전자 워터마크 매립 장치 및 검출 장치
JP5830338B2 (ja) 帳票認識方法および帳票認識装置
JP2008004101A (ja) カラーベースのイメージコードの色判別方法
JP2005150855A (ja) カラー画像の圧縮方法及びカラー画像圧縮装置
US9171224B2 (en) Method of improving contrast for text extraction and recognition applications
JP5337563B2 (ja) 帳票認識方法および装置
JP4077919B2 (ja) 画像処理方法及び装置及びその記憶媒体
CN110210467B (zh) 一种文本图像的公式定位方法、图像处理装置、存储介质
JP2010074342A (ja) 画像処理装置、画像形成装置、及びプログラム
JP5887242B2 (ja) 画像処理装置、画像処理方法、及びプログラム
KR100353872B1 (ko) 기계로 인식가능한 코드 및 그 인코딩/디코딩 방법
JP5929282B2 (ja) 画像処理装置及び画像処理プログラム
JP4228905B2 (ja) 画像処理装置及びプログラム
US10860827B2 (en) Image processing apparatus
JP2004242075A (ja) 画像処理装置および方法
JPH08212296A (ja) 光学式文字読取装置
JP2005157938A (ja) 帳票認識装置、方法、プログラムおよび記憶媒体
JP2008005177A (ja) 画像処理装置及び画像処理方法並びに画像処理プログラム
JP2000099627A (ja) 文字読取装置

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
O035 Opposition [patent]: request for opposition
O132 Decision on opposition [patent]
G171 Publication of modified document after post-grant opposition [patent]
O074 Maintenance of registration after opposition [patent]: final registration of opposition
O132 Decision on opposition [patent]
O132 Decision on opposition [patent]
G171 Publication of modified document after post-grant opposition [patent]
LAPS Lapse due to unpaid annual fee
R401 Registration of restoration
FPAY Annual fee payment

Payment date: 20130523

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20140523

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20150723

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20161021

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20171123

Year of fee payment: 16

FPAY Annual fee payment

Payment date: 20190225

Year of fee payment: 17

R401 Registration of restoration
FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 18