KR100606404B1 - 컬러코드 이미지 검출 방법 및 장치 - Google Patents

컬러코드 이미지 검출 방법 및 장치 Download PDF

Info

Publication number
KR100606404B1
KR100606404B1 KR1020030084713A KR20030084713A KR100606404B1 KR 100606404 B1 KR100606404 B1 KR 100606404B1 KR 1020030084713 A KR1020030084713 A KR 1020030084713A KR 20030084713 A KR20030084713 A KR 20030084713A KR 100606404 B1 KR100606404 B1 KR 100606404B1
Authority
KR
South Korea
Prior art keywords
image
candidate
area
pixel
color
Prior art date
Application number
KR1020030084713A
Other languages
English (en)
Other versions
KR20050051029A (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 KR1020030084713A priority Critical patent/KR100606404B1/ko
Publication of KR20050051029A publication Critical patent/KR20050051029A/ko
Application granted granted Critical
Publication of KR100606404B1 publication Critical patent/KR100606404B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K2019/06215Aspects not covered by other subgroups
    • G06K2019/06225Aspects not covered by other subgroups using wavelength selection, e.g. colour code

Landscapes

  • Image Analysis (AREA)

Abstract

본 발명은 입력영상에 포함된 컬러코드 이미지 영역을 검출하는 방법 및 그 장치에 관한 것으로, 상기 입력 이미지에서 배경영역과 후보영역이 구분된 이진화 이미지에서 픽셀들을 순차적으로 스캔하여 상기 후보영역에 해당하는 픽셀들에 대해 우선법을 적용하여 컬러코드 이미지에 해당하는 영역을 추출하며, 컬러코드 이미지의 후보 영역을 검출하기 위해 전처리된 이미지에 미로 찾기에 사용되는 우선법 알고리즘을 적용하여 컬러코드 이미지 영역의 좌표를 보다 효과적으로 도출할 수 있다.
컬러코드 이미지, 우선법, 컬러

Description

컬러코드 이미지 검출 방법 및 장치{Method and apparatus for detecting color code image}
도 1a에서 1d는 본 발명의 예시에 사용되는 컬러코드 이미지의 예들을 도시한 것이다.
도 2는 RGB 컬러 큐브를 보여주며, 도 3은 이로부터 만든 HSI 컬러 모델을 보여준다.
도 4는 본 발명에 적용되는 우선법을 설명하기 위한 도면이다.
도 5는 컬러코드 이미지가 부착된 상황을 카메라로 촬영한 입력영상의 예를 나타낸다.
도 6a-6d는 입력이미지로부터 후보영역을 추출하는 과정을 설명하는 도면이다.
도 7은 후보영역에 우선법의 적용 예를 설명하기 위한 도면이다.
도 8은 두 개의 후보 사각형 영역을 하나의 사각형 영역으로 합치는 방법을 설명하기 위한 도면이다.
도 9는 본 발명의 일 실시예에 따라 컬러코드 이미지를 추출하는 방법을 설명하는 흐름도이다.
도 10은 후보영역의 좌표를 찾기 위하여 우선법을 적용하는 방법을 설명하는 흐름도이다.
도 11a, 11b, 및 12는 컬러코드 이미지의 일 예를 설명하는 도면이다.
도 13은 본 발명을 실현하기 위한 전체 시스템의 구성도를 나타낸다.
본 발명은 컬러코드 이미지 디코딩에 관한 것으로, 특히 입력영상에 포함된 컬러코드 이미지 영역을 검출하는 방법 및 그 장치에 관한 것이다.
상품 정보를 표시하기 위해 널리 사용되는 바코드(bar code)는 흑백의 선의 굵기, 이중선 등에 의해 인코딩된 숫자를 표시한다. 바코드는 흑백 이미지에 속하므로 미관 및 용량상의 단점이 있다. 바코드에 비해 컬러코드 이미지는 미관상 수려하고 더 많은 조합을 수용할 수 있기 때문에, 용도가 더 다양하여 컬러로 정보를 표시한 컬러코드 이미지의 이용이 확대되고 있다.
흑백 또는 컬러로 형성된 컬러코드 이미지가 어떤 객체의 표면에 부착되어 있는 상태에서 카메라와 같은 촬영장치로 컬러코드 이미지를 포함한 영상을 촬영하게 되면, 촬영 환경이나 장비 특성에 따라 컬러의 왜곡이 일어나기 쉽고, 따라서 입력 이미지에서 컬러코드 이미지에 해당하는 영역을 정확하게 검출하기 어려운 문제점이 있었다.
본 발명이 이루고자 하는 기술적 과제는 입력된 이미지를 전처리하여 이진화 이미지를 형성한 다음 입력이미지에서 컬러코드 이미지에 해당하는 영역을 보다 효과적으로 검출하기 위한 컬러코드 이미지 검출 방법 및 장치를 제공하는 것이다.
상기의 기술적 과제를 이루기 위한 본 발명에 따라 입력 이미지에 포함되어 있는 컬러코드 이미지를 추출하는 방법은, 입력 이미지에 포함되며 적어도 두 가지 색상으로 이루어져 정보를 표시하는 컬러코드 이미지를 추출하는 방법에 있어서, (a) 상기 입력이미지로부터 Hue 성분 이미지와 Saturation 이미지를 구한 후 상기 두 이미지를 AND연산하여 배경영역과 후보영역을 구분하여 이진화이미지를 생성하는 단계; (b) 상기 이진화 이미지의 픽셀들을 순차적으로 스캔하여 상기 후보영역 중에서 처음으로 만나는 픽셀의 위치를 검색하는 단계; (c) 상기 첫 픽셀부터 시작하여 우선법을 적용하여 상기 후보영역의 외곽선 좌표를 인식하는 단계; (d) 상기 인식된 외곽선 좌표에 의하여 형성되는 사각형의 영역을 컬러코드 이미지에 대한 후보 사각형 영역으로 설정하는 단계; (e) 다른 후보영역에 대해서도 상기 (b)에서 (d) 과정을 반복하는 단계; (f) 상기 검색된 후보 사각형 영역들 중에서 최종 후보 사각형 영역을 결정하는 단계; (g) 상기 결정된 후보 사각형 영역에 표시된 컬러코드 이미지를 추출하는 단계; 및 (h) 상기 추출된 컬러코드 이미지로부터 코드정보를 추출하는 단계를 포함한다.
상기 (c) 단계는 상기 첫 픽셀을 시작점으로 하여, (c1) 당해 픽셀에서 시계방향으로 90도 회전하여 그 앞에 있는 픽셀이 후보영역 밖에 있는 것인지를 확인하는 단계; (c2) 만일 후보영역 밖의 것이면 반시계방향으로 회전한 다음 상기 (c1) 단계로 돌아가고, 그렇지 않으면 현재 픽셀 위치에서 한 픽셀 앞으로 전진하는 단계; (c3) 현재 픽셀의 위치가 시작점 픽셀로 되돌아 올 때까지 상기 (c1)과 (c2) 과정을 반복하는 단계; 및 (c4) 픽셀의 이동과정에서 얻은 픽셀들의 좌표에 기초하여 후보영역의 외각으로 형성되는 사각형의 좌표를 획득하는 단계를 포함하는 것이 바람직하다.
상기의 기술적 과제를 이루기 위한 본 발명에 따라 입력 이미지에 포함되며 적어도 두 가지 색상으로 이루어져 정보를 표시하는 컬러코드 이미지를 디코딩하는 장치에 있어서 상기 입력이미지로부터 Hue 성분 이미지와 Saturation 이미지를 구한 후 상기 두 이미지의 AND연산하여 생성되어 배경영역과 후보영역이 구분된 이진화이미지에서 픽셀들을 순차적으로 스캔하여 상기 후보영역에 해당하는 픽셀들에 대해 우선법을 적용하여 컬러코드 이미지에 해당하는 영역을 추출하는 컬러코드 이미지 추출부; 및 상기 추출된 컬러코드 이미지 영역에 표시된 이미지로부터 코드정보를 추출하는 코드정보 추출부를 포함한다.
상기 컬러코드 이미지 추출부는 후보영역 내의 픽셀에서 시계방향으로 90도 회전하였을 때 앞에 있는 픽셀이 후보영역 밖에 있으면 반시계방향으로 회전하고, 그렇지 않으면 현재 픽셀 위치에서 한 픽셀 앞으로 전진하는 방식으로, 현재 픽셀의 위치가 시작점 픽셀로 되돌아 올 때까지 진행하여, 픽셀의 이동과정에서 얻은 픽셀들의 좌표에 기초하여 후보영역의 외각으로 형성되는 사각형의 좌표를 획득하는 것이 바람직하다.
이하에서, 도면을 참조하여 본 발명의 실시예에 대하여 상세히 설명하기로 한다.
도 1a에서 1d는 본 발명의 예시에 사용되는 컬러코드 이미지의 예들을 도시한 것이다. 도 1a는 사각형 이미지에 복수의 컬러가 줄무늬를 형성하고, 도 1b는 도너츠형 이미지에 각 컬러는 방사상으로 구분되어 표시되며, 도 1c는 사각형 매트릭스를 형성하고 각 셀에 컬러가 표시되며, 도 1d는 복수의 동심원으로 형성되어 동심원과 동심원 사이의 공간에 컬러가 표시된다.
도 1d의 컬러코드 이미지는 동심원 형태로서 여러 개의 링으로 구성되며, 각 링은 도 2와 같이 R, G, B, C, M, Y의 여섯 가지 색 중에서 동일한 색이 인접되지 않도록 선정된다. 이와 같은 경우, 다섯 개의 링으로 구성하면, 이 컬러코드 이미지로 나타낼 수 있는 조합 수는 6x54 이다. 중앙의 가장 작은 원은 보정 용도로 사용할 수 있다. 이와 같은 컬러코드의 장점은 모든 방향에 대해 대칭이라는 사실 외에도, Saturation 성분 이미지와 Hue 성분 이미지로부터 대략적 위치 파악이 용이하다는 것이다. 또한, 컬러코드 이미지에 표시하는 컬러를 안전한 색깔(safe color) 중에서 선정함으로써 잡음 또는 왜곡에 강인하다는 것이다. 따라서, 컬러코드 이미지는 Hue 값과 Saturation 값으로 특징을 구분할 수 있는 색들을 사용하는 것이 바람직하다. 필요시 216 개의 안전색(safe colors) 중에서 추가 선정하여 사용할 수 있다.
도 1d의 컬러코드 이미지에 대해 도 11a, 11b, 12를 통하여 보다 자세히 설명하기로 한다. 컬러코드 이미지는 적어도 둘의 컬러를 이용하여 소정의 정보를 표시하기 위한 것으로서, 복수의 컬러를 표시하기 위한 복수의 영역을 포함한다. 중심부분에 있는 제1영역에는 하나의 컬러가 표시되며, 제1영역의 주위를 둘러싸는 일정 부분에는 제2영역을 형성하여 소정의 컬러가 표시된다. 또한, 제2영역의 주위를 둘러싸는 일정 부분에 제3영역을 형성하여 소정의 컬러가 표시되며, 필요에 따라서 이러한 방식으로 추가의 영역을 더 구비할 수 있다. 위와 같이 형성되는 영역들은 하나의 중심점을 중심으로 하여 복수의 폐곡면을 형성하되, 내부의 폐곡 면을 외부의 폐곡면이 전부 둘러싸는 형태가 되며, 폐곡면과 폐곡면의 사이에 각 영역이 형성된다.
도 11a에 도시된 실시예의 컬러코드 이미지는 중심점을 중심으로 복수의 동심원의 형태로 이루어지며, 각 동심원과 동심원의 사이에 형성되어 있는 제1~5영역(A1~5)에는 소정의 컬러가 표시된다. 또한, 복수의 영역에 표시된 컬러의 인식율을 높이기 위하여 각 영역의 면적은 영역 간에 서로 일정한 상관관계가 있도록 형성할 수 있으며, 그 일 예로서 각 영역의 면적이 서로 동일하게 되도록 할 수 있다(도 11b 참조).
도 11b는 도 11a에 도시된 컬러 태그의 각 영역을 구분짓는 동심원들 간의 반지름의 상대적인 관계를 나타내는 도면이다.
제1영역(A1)의 면적은
Figure 112003044896086-pat00001
이고, 제2영역(A2)의 면적은
Figure 112003044896086-pat00002
이므로, 양자가 동일한 값이 되기 위해서는
Figure 112003044896086-pat00003
이 되어야 한다. 제3영역(A3)의 면적은
Figure 112003044896086-pat00004
인데, 이것이 제1영역(A1)의 면적
Figure 112003044896086-pat00005
가 같기 위해서는
Figure 112003044896086-pat00006
이 되어야 한다.
제일 중심부에 있는 제1영역(A1)을 형성하는 동심원의 반지름을 1이라고 할 때 제2, 3, 4, 5영역(A2, A3, A4, A5)의 바깥 경계를 형성하는 동심원의 반지름은 각각
Figure 112003044896086-pat00007
= 1.414,
Figure 112003044896086-pat00008
= 1.732,
Figure 112003044896086-pat00009
= 2,
Figure 112003044896086-pat00010
= 2.236로 정할 수 있다. 그렇게 되면, 제2영역(A2)의 동심원 반지름과 그 안쪽에 있는 제1영역(A1)의 동심원 반지름의 차이가 0.414인데 비하여, 제3영역(A3)의 동심원 반지름과 그 안쪽에 있는 제2 영역(A2)의 동심원 반지름의 차이가 0.318로 작아지게 되며, 바깥 쪽으로 갈수록 동심원의 반지름 차이가 점차적으로 줄어들게 된다.
이와 같이 동심원의 반지름을 조정하여 각 영역의 면적을 서로 동일하게 함으로써, 일정한 간격을 갖는 동심원으로 형성된 컬러코드 이미지에 비하여 각 영역별 인식 확률을 동등하게 하여, 촬영된 화상에서 컬러코드 이미지를 형성하는 모든 영역이 포착될 가능성을 높일 수 있을 뿐만 아니라 컬러코드 이미지의 디코딩 과정을 보다 효율적으로 수행할 수 있다. 또한, 각 영역의 면적을 동일하게 하는 것과 같이 각 영역의 면적이 서로 일정한 상관관계를 갖도록 형성하는 다른 방법을 적용할 수도 있다. 예를 들어, 바깥 영역으로 갈수록 면적이 작게 되도록 하는 등과 같이 규칙적으로 변하게 할 수 있으며, 컬러코드 이미지의 크기나 응용 분야에 따라서 적절한 방법을 선택할 수 있다.
도 12는 도 11a의 컬러코드 이미지의 각 영역에 표시할 수 있는 컬러들의 일 예를 도시한 것으로, 흑색, 적색, 황색, 녹색, 시얀색, 청색, 마젠타색, 백색, 회색을 예로 들고 있다. 만일 도 11a와 같이 5개의 동심원 영역(A1~5)으로 구성하면서 흑색, 백색, 회색을 경계선이나 배경색으로 사용하고 나머지 6색으로 숫자를 표시하는 경우, 65=7,776 가지의 숫자를 표현할 수 있다. 즉, 위 예에서 체육대회 참가자가 약 7,000명 이하라면 도 11a의 컬러 태그 형태로 5색의 컬러를 이용하여 적용할 수 있음을 말한다. 만일 이웃하는 영역간의 컬러를 다르게 되도록 설정하는 것으로 정한다면 컬러 태그로 표현할 수 있는 경우 수는 줄어들지만 태그 검출은 보다 용이하게 할 수 있다. 216 개의 안전색(safe colors) 중에서 추가 선택하여 사용하여 조합수를 증가시킬 수 있다.
한편, 흑색, 백색 또는 회색을 선택적으로 배경색으로 사용할 수 있다고 하면, 6 가지의 숫자 표시용 컬러와 3가지의 배경색을 이용하여 65x3 가지의 숫자를 표현할 수 있으며, 참가자를 3 종류로 그룹핑하여 구분할 때 유용하다.
한편, 컬러코드 이미지가 사각형 및 삼각형으로 형성될 수 있으며, 문자나 숫자와 같은 코드정보를 표시하기 위한 영역의 외각에 배경영역을 별도로 더 표시할 수 있다. 배경영역은 정보 표시용 영역과는 다른 색깔 또는 모양으로 설정하는 것이 바람직하다. 또한, 각 영역과 영역 사이에는 영역들을 시각적으로 구분하기 위한 경계선 또는 경계영역을 더 포함할 수 있다.
경계선 또는 경계영역에 사용되는 컬러 또는 배경영역의 배경색은 정보 표시용으로 사용되는 컬러 이외의 것으로 설정되며, 백색, 흑색 또는 회색 중 어느 하나로 정해서 사용하는 경우 배경색을 기준으로 정보표시용 영역에서 인식된 컬러의 콘트라스트 보정에 이용할 수 있다.
이와 같은 컬러코드 이미지가 사용되는 일 사례를 설명하기로 한다. 수천명이 참가하는 체육대회(또는 마라톤 대회)에서 각 참가자들에게 참가번호가 인코딩된 컬러 컬러코드 이미지를 배포하고, 각 참가자는 컬러코드 이미지를 상의 왼쪽에 부착하고 있다고 가정한다. 체육 행사에서 참가자들의 활동 상황을 정지영상(사진)이나 동영상으로 촬영하여 각 참가자에게 제공하는 서비스를 수행하는 경우, 컬러코드 이미지는 영상에 잡힌 참가자가 누군인지를 확인하기 위한 식별자로서 작용하게 된다. 즉, 컬러코드 이미지로부터 참가번호를 인식하여 참가자의 이름 및 주소를 확인하여 그 참가자가 촬영된 정지영상이나 동영상을 무상 또는 유상으로 제공하거나 인터넷과 같은 통신망을 통하여 제공할 수 있다.
상기한 예와 같이 컬러코드 이미지가 운동하는 참가자의 상의에 표시되어 있는 경우, 참가자의 정면으로 컬러코드 이미지가 평면적으로 촬영되면 이를 쉽게 인식할 수 있겠지만 촬영 당시 컬러코드 이미지가 표시된 부분이 접혀 있었다거나 팔이나 다른 것에 의해 일부분이 가려져 있거나 옆으로 비스듬한 방향에서 촬영된 경우 등이 얼마든지 가능하다. 다시 말하면, 최초 프린트된 당시의 컬러코드 이미지의 형태 그대로 촬영되는 것이 아니라 일부분을 소실하거나 형태가 변형되어 촬영되는 경우를 고려하여야 한다는 것이다.
코드이미지의 형태를 좌우 상하로 규칙적이고 대칭적인 모양으로 형성하면 촬영된 영상에서 컬러 태그의 일부분이 소실되더라도 중심점에 있는 영역을 비롯하여 모든 영역에 대해서 적어도 부분적만이라도 소정 컬러가 표시된 것을 찾을 수 있으면 디코딩이 가능하게 된다. 또한, 상황에 따라 90도 간격 등으로 분할하여 부착할 수 있는 장점도 있다.
또한, 각 영역의 면적을 동일하게 하면, 촬영된 영상에서 각 영역을 검출할 수 있는 확률도 동일하게 된다. 컬러코드 이미지를 인식함에 있어서, 모든 영역의 컬러를 인식하여야만 의미있는 디코딩을 수행할 수 있는 것이고 어느 하나의 영역이라도 검출되지 않으면 안 되기 때문에 모든 영역의 컬러를 검출하여야 한다. 따라서 숨겨지거나 가려질 확률이 가장 높은 중심부에 있는 영역에 대해서는 그 반지름을 상대적으로 크게 하고, 바깥쪽에 있는 영역은 그 바깥 둘레의 길이가 상대적으로 길어서 촬영될 확률이 상대적으로 크므로 그 폭을 좁게 함으로써 각 영역의 검출 확률을 같게 하고, 그럼으로써 컬러코드 이미지 자체의 인식율을 높일 수 있을 것이다. 한편, 경우에 따라서는 외각에 있는 영역의 면적은 그 내부에 있는 것에 비하여 상대적으로 작아지더라도 컬러코드 이미지에 대한 전체적인 인식율을 크게 떨어뜨리지 않을 수 있다. 만일 그렇다면 컬러코드 이미지가 차지할 수 있는 전체 면적이 일정하다고 할 때 컬러코드 이미지에 포함되는 영역의 수를 늘리거나 제일 안 쪽에 있는 영역의 면적을 보다 크게 할 수 있다. 이 경우 촬영 장치의 해상도가 높다면 보다 바람직할 것이다.
도 2는 RGB 컬러 큐브를 보여주며, 도 3은 이로부터 만든 HSI 컬러 모델을 보여준다. 도 3에서 원형 단면은 I(intensity) 축에 수직이다. 이 도면에서 보듯이 Saturation 값은 원점으로부터의 거리에 비례하며, Hue 값은 적색으로부터의 각도에 해당한다. 다음의 수학식 1과 2는 각각 Saturation과 Hue 값 계산을 위한 공식이다.
해당한다. 다음의 수학식 1과 2는 각각 Saturation과 Hue 값 계산을 위한 공식이다.
Figure 112006021411616-pat00011
Figure 112006021411616-pat00012
여기서, 각 θ는 다음의 수학식 3과 같이 표현된다.
Figure 112006021411616-pat00013
따라서, 컬러코드 이미지에 사용된 색깔들은 순수하면, 수학식 1에 의해 Saturation 값이 최대(1.0)이며, Hue 값은 수학식 2에 의해 60도의 배수에 해당하는 값을 가짐을 알 수 있다. 즉, 컬러코드 이미지에 사용되는 색깔들은 수학식 1에 의해서는 최대값 1.0, 수학식 2에 의해서는 60의 배수를 갖게 된다. 따라서, 수학식 1에 의해 Saturation 성분 이미지를 만들고, 수학식 2에 의해서는 60의 n배 근처에서 최대값을 갖는 변환식을 만들어 목적에 맞게 변형시킨 Hue 성분 이미지를 생성할 수 있다. 이들에 대한 스레쉬홀딩 후, Hue 성분 이미지와 Saturation 성분 이미지 간의 AND 연산에 의해 컬러코드 이미지가 존재할 확률이 높은 영역, 즉, 후보 영역(들)을 그 이외의 배경영역과 구분한 새로운 이진화 이미지를 만든다. 이 결과 이진화 이미지에는 두 곳 이상의 후보 영역이 존재할 수 있다.
본 발명의 실시예에 의하면, 컬러코드 이미지에 사용되는 컬러로 R, G, B, C, M, Y을 사용하면, 이들 컬러들의 위와 같은 특징을 이용하여 컬러코드 이미지에 해당할 수 있는 후보 영역을 입력 이미지에서 다른 영영과 분리하여 표시된 이진화 이미지를 생성하는 것이 용이하다.
다음으로, 상기 이진화 이미지에서 우선법 알고리즘에 의해 컬러코드 이미지에 대한 각 후보 영역의 좌표를 정확하게 계산하는 방법을 설명한다.
도 4는 본 발명에 적용되는 우선법을 설명하기 위한 도면으로서, 우선법(right hand on wall)은 마우스 로봇 분야에서 미로에 들어간 마우스 로봇이 갈림길을 만났을 때 우선적으로 오른쪽으로 가는 방법이다. 즉, 미로의 입구에 들어 섰을 때, 로봇은 오른쪽 벽에 붙어서 앞으로 가면 돌아간다 하더라도 결국은 출구에 도달하게 된다는 것으로, 우선법 알고리즘을 의사코드로 표현 하면 다음과 같다.
(a) 앞으로 진행
(b) 아직 미로 안에 갇혀 있다면
(b1) 시계 방향으로 90도 회전
(b2) 만약 벽이 앞을 가로막고 있다면 반시계 방향으로 90도 회전 (반복)
(b3) 그렇지 않으면 앞으로 진행
(b4) (b)로 돌아감
(c) 미로 탈출 성공.
도 5는 옷에 컬러코드 이미지가 부착된 상황을 카메라로 촬영한 입력영상의 예를 나타낸다. 도면에서 중앙 부분에 컬러 동심원 이미지가 포함되어 있다. 도 9는 본 발명의 일 실시예에 따라 도 5와 같은 입력 이미지에 포함되어 있는 컬러코드 이미지를 추출하는 방법을 설명하는 흐름도이다.
도 5와 같은 입력 이미지에서 배경영역과 후보영역을 구분하여 이진화 이미지를 생성(91)한 다음 이진화 이미지의 픽셀들을 순차적으로 스캔하여(92) 후보영역 중에서 처음으로 만나는 픽셀의 위치를 검색한다(93)
첫 픽셀부터 시작하여 후보영역에 대해 우선법을 적용하여 그 후보영역의 외곽선 좌표를 인식하여(94), 그렇게 인식된 외곽선 좌표에 의하여 형성되는 사각형의 영역을 컬러코드 이미지에 대한 후보 사각형 영역으로 설정한다(95).
하나의 후보영역에 대한 검색이 종료되면 후보영역 바깥의 좌표에서 다시 스캔을 시작하여 이진화 이미지에 포함되어 있는 다른 후보영역에 대해서도 상기 과정을 반복하여 후보 사각형 영역을 구한다(96). 상기와 같은 과정은 마지막 좌표에 대해서까지 수행된다(97). 상술한 과정에 의하여 하나 또는 둘 이상의 후보 사각형 영역을 구할 수 있다.
후보 사각형 영역 중에서 서로 가깝거나 겹쳐진 것은 하나의 사각형 영역으로 합하거나(98), 하나의 후보 사각형 영역의 크기가 너무 크거나 작거나 또는 모양(가로 대 세로 비 등)이 다르면 후보에서 제거하여(99), 검색된 후보 사각형 영역들 중에서 최종 후보 사각형 영역을 결정한다(100). 이와 같이 결정된 후보 사각형 영역에 표시된 컬러코드 이미지를 추출한다(101). 컬러와 문자와의 변환표에 의하여 컬러코드 이미지에 표시된 컬러로부터 소정의 코드정보를 얻는다(101).
도 6a-6d는 도 5의 입력이미지로부터 도 9의 방법에 의하여 후보영역을 추출하는 과정을 설명하는 도면이다.
도 6a는 Hue 성분과 Saturation 성분 이미지를 구한 후, 이진화한 두 이미지를 “AND” 연산하여 얻은 이진화 이미지 중 우측 상단 부분을 확대한 이미지를 보여주며, 흰색 부분이 컬러코드 이미지가 존재할 가능성이 있는 후보 영역들이다. 도 6a에서, 컬러코드 이미지 후보 영역으로 도면 좌하단의 컬러코드 이미지 영역 외에, 도면 우측 위 쪽에도 추가의 영역이 나타남을 볼 수 있다. 후자의 영역도 원 영상에서 순도가 높고 Hue 값이 60의 n배 근처이기 때문에 선정되었다. 우측 위 쪽의 후보 영역은 필터링(예: 미디언 필터링), 가로 대 세로 비 측정, 크기 측정 등에 의해 후보 영역 목록에서 쉽게 제거시킬 수 있다. 만일 컬러코드 이미지의 모양이 원형인 경우, 후보 영역의 검증에 (동심)원을 찾기 위한 Hough 변환(Bassmann and Besslich, Ad Oculos Digital Image Processing, ITP, 1995, 참조)을 적용한다면 정확도를 높일 수 있을 것이다.
도 6b는 도 6a의 흰색으로 표시된 후보영역에 대해 우선법을 적용하여 후보영역을 둘러싸는 사각형과 그 좌표를 구하는 과정을 설명하는 것이다. 도 10은 후보영역의 좌표를 찾기 위하여 우선법을 적용하는 방법을 설명하는 흐름도이다. 후보 영역(들)에 대한 외곽 직각 사각형의 좌표를 계산하기 위해, 이진화 이미지에 우선법을 적용하며, 이 때 다음의 절차를 따른다.
도 6a와 같은 이진화 이미지에서 (0,0) 좌표 또는 확률 등에 의해 미리 선정된 첫 좌표에서부터 픽셀들을 순차적으로 스캔하여 후보영역 내에 속하는 것 중에서 처음으로 만나는 픽셀의 위치를 찾아 그 픽셀을 시작점으로 하여 우선법을 적용한다(105). 먼저, 당해 픽셀에서 시계방향으로 90도 회전하여(106) 그 앞에 있는 픽셀이 후보영역 밖에 있는 것인지를 확인한다(107). 만일 후보영역 밖의 것이면 반시계방향으로 회전한 다음 단계 107로 돌아간다(108). 반시계방향으로 계속하여 4번을 회전하게 된 경우에는 하나의 픽셀만으로 이루어진 후보영역으로 간주할 수 있다.
한편, 단계 107의 판별 결과 후보영역 내에 있는 것이면 현재 픽셀에서 한 픽셀 앞으로 전진하여 당해 픽셀의 좌표를 확인한다(109). 상기와 같은 과정을 통하여 현재 위치가 시작점 픽셀로 되돌아 온 지를 확인하고, 그렇지 않으면 후보영역에 대한 X,Y 좌표에 대한 데이터를 갱신한다(111).
후보영역에 대해 우선법을 적용하면 결과적으로 시작점 픽셀에서 시작하여 다시 그 위치로 되돌아 오게 되며, 픽셀의 이동과정에서 얻은 픽셀들의 좌표에 기초하여 후보영역의 외곽으로 형성되는 사각형의 좌표를 획득할 수 있다(112).
도 7은 후보영역에 우선법의 적용 예를 설명하기 위한 도면으로서, 점선으로 표시된 부분이 후보 영역에 해당하는 부분이며, 각 네모 칸은 하나의 픽셀을 의미한다. 그리고, 각 픽셀에 표시된 숫자는 우선법에 따른 추적 순서를 나타낸다.
입력 이미지를 왼쪽에서 오른쪽으로 스캔하여 첫 번째 시작점 픽셀로서 (1)번이 검출된 경우 그 좌표를 기록한다(105). 그런 다음 (1)번 픽셀에서 시계방향으로 90도 회전하면(106) 후보영역 내의 픽셀 (2)번이 나타난다. 이 경우 (1)번 픽셀에서 앞으로 전진하여 (2)번 픽셀로 이동한다(109). (2)번 픽셀에서 시계방향으로 90도 회전하면 그 앞에 있는 픽셀은 후보영역 밖이므로 반시계방향으로 90도 회전시킨다(108). 그러면, 후보영역 내의 (3)번 픽셀이 그 앞에 있으므로 앞으로 전진한다(109). (3)번 픽셀에서 시계방향으로 90도 회전하면 (4)번 픽셀을 만난 다.
(4)번 픽셀에서 시계방향으로 90도 회전하면 후보영역 밖의 픽셀을 만나고, 그래서 반시계방향으로 90도 회전하면 또 후보영역 밖의 픽셀을 만나므로, 한번 더 반시계방향으로 90도 회전하게 되면 후보영역 내의 픽셀(5)를 만나므로 그 픽셀로 이동한다. 이와 같은 과정을 반복하여 도면에 쓰여진 숫자의 순서대로 픽셀 이동을 하고, 후보영역은 폐곡면을 형성하기 때문에 결국 시작점 픽셀을 만나게 되며, 그러면 우선법 검색이 종료된다. 참고로, 미로 찾기에서의 우선법은 입구에서 출발하여 출구로 나가는 알고리즘으로 되어 있으나, 본 발명에 우선법을 적용하게 되면 입구와 출구가 같게 된다.
상술한 바와 같은 방식으로 픽셀 이동하면서 각 픽셀의 좌표를 얻을 수 있으며, 후보영역에 속한 각 픽셀의 좌표들 중에서 최좌측, 최우측, 최상측, 최하측에 해당하는 좌표(a, b, c, d)로 형성되는 사각형의 좌표를 얻을 수 있다.
도 6b에서 구한 후보 사각형 영역 중에는 중간 위쪽에 있는 것과 같이 서로 가깝거나 겹쳐져 있는 경우가 있다. 이 경우, 이들 사각형을 하나의 영역으로 합쳐서 도 6c와 같이 후보 사각형 영역들을 형성한다. 도 8은 두 개의 후보 사각형 영역(81, 83)을 하나의 사각형 영역(87)으로 합치는 방법을 설명하기 위한 도면이다. 한 후보 사각형 영역(81)의 네 꼭지점 좌표에서 일정한 개수의 픽셀의 범위(본 예에서는 10 픽셀)로 설정되는 사각형 영역(85)과 겹쳐지는 다른 후보 사각형 영역(83)이 있는 경우 이들을 합하여 하나의 후보 사각형 영역을 형성하는 예를 보여준다.
한편, 후보 사각형 영역의 크기가 일정한 기준에 비교하여 상당히 작거나 큰 경우, 또는 가로 대 세로의 비가 너무 크거나 작은 경우, 이들은 후보에서 제거하게 되는데, 그 결과 도 6d와 같이 왼쪽 아래와 중간 위쪽의 두 후보 사각형 영역을 얻게 될 것이다. 후보 사각형 영역(들)이 결정되면 그 영역에 표시된 이미지의 모양 및 원래 이미지에서의 컬러를 인식하여 컬러코드 이미지로 합당한 것인지를 판별한 다음 코드정보를 얻게 된다.
도 13은 본 발명을 실현하기 위한 전체 시스템의 구성도를 나타낸다.
입력장치(134)는 입력이미지(133)를 스캔하여 디코더(135)에서 인식할 수 있는 이미지 신호로 변환하는, 스캐너나 카메라와 같은 장치를 말한다. 디코더(135)는 입력장치(134)에서 획득한 입력 이미지로부터 컬러코드 이미지를 추출한 다음 컬러코드 이미지에 내재된 코드정보(138)를 추출하며, 컬러코드 이미지 추출부(136) 및 코드정보 추출부(137)를 구비한다.
컬러코드 이미지 추출부(136)는 전체 입력 이미지에서 컬러코드 이미지의 후보 영역을 검출한 다음 각 후보영역에 대해 우선법 알고리즘을 적용하여 각 후보 영역의 외곽을 형성하는 사각형의 좌표를 도출한다. 코드정보 추출부(137)는 컬러코드 이미지 영역에 표시된 이미지로부터 코드정보를 추출한다.
컬러코드 이미지 추출부(136)에서 후보 사각형 영역을 찾기 위하여 적용되는 우선법은 도 10에서 설명된 바와 같이 수행된다. 즉, 후보영역 내의 픽셀에서 시계방향으로 90도 회전하였을 때 앞에 있는 픽셀이 후보영역 밖에 있으면 반시계방향으로 회전하고, 그렇지 않으면 현재 픽셀 위치에서 한 픽셀 앞으로 전진하는 방식으로, 현재 픽셀의 위치가 시작점 픽셀로 되돌아 올 때까지 진행하여, 픽셀의 이동과정에서 얻은 픽셀들의 좌표에 기초하여 후보영역의 외곽으로 형성되는 사각형의 좌표를 획득하게 된다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플라피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상 도면과 명세서에서 최적 실시예들이 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상술한 바와 같이, 본 발명에 의하면 컬러코드 이미지의 후보 영역을 검출하기 위해 Saturation 성분 이미지와 Hue 성분 이미지에 대해 이진화하고 논리 연산을 적용하여 후보 영역을 일차적으로 검출한 후, 이렇게 전처리된 이미지에 미로 찾기에 사용되는 우선법 알고리즘을 적용하여 컬러코드 이미지 영역의 좌표를 보다 효과적으로 도출할 수 있다.

Claims (9)

  1. 입력 이미지에 포함되며 적어도 두 가지 색상으로 이루어져 정보를 표시하는 컬러코드 이미지를 추출하는 방법에 있어서,
    (a) 상기 입력 이미지로부터 Hue 성분 이미지와 Saturation 이미지를 구한 후 상기 두 이미지를 AND연산하여 배경영역과 후보영역을 구분하여 이진화 이미지를 생성하는 단계;
    (b) 상기 이진화 이미지의 픽셀들을 순차적으로 스캔하여 상기 후보영역 중에서 처음으로 만나는 픽셀의 위치를 검색하는 단계;
    (c) 상기 첫 픽셀부터 시작하여 우선법을 적용하여 상기 후보영역의 외곽선 좌표를 인식하는 단계;
    (d) 상기 인식된 외곽선 좌표에 의하여 형성되는 사각형의 영역을 컬러코드 이미지에 대한 후보 사각형 영역으로 설정하는 단계;
    (e) 다른 후보영역에 대해서도 상기 (b)에서 (d) 과정을 반복하는 단계;
    (f) 상기 검색된 후보 사각형 영역들 중에서 최종 후보 사각형 영역을 결정하는 단계;
    (g) 상기 결정된 후보 사각형 영역에 표시된 컬러코드 이미지를 추출하는 단계;및
    (h) 상기 추출된 컬러코드 이미지로부터 코드정보를 추출하는 단계를 포함하는 것을 특징으로 하는 컬러코드 이미지 추출방법.
  2. 제1항에 있어서, 상기 (c) 단계는 상기 첫 픽셀을 시작점으로 하여,
    (c1) 당해 픽셀에서 시계방향으로 90도 회전하여 그 앞에 있는 픽셀이 후보영역 밖에 있는 것인지를 확인하는 단계;
    (c2) 만일 후보영역 밖의 것이면 반시계방향으로 회전한 다음 상기 (c1) 단계로 돌아가고, 그렇지 않으면 현재 픽셀 위치에서 한 픽셀 앞으로 전진하는 단계;
    (c3) 현재 픽셀의 위치가 시작점 픽셀로 되돌아 올 때까지 상기 (c1)과 (c2) 과정을 반복하는 단계; 및
    (c4) 픽셀의 이동과정에서 얻은 픽셀들의 좌표에 기초하여 후보영역의 외각으로 형성되는 사각형의 좌표를 획득하는 단계를 포함하는 것을 특징으로 하는 컬러코드 이미지 추출방법.
  3. 제1항에 있어서, 상기 (f) 단계는
    상기 검색된 후보 사각형 영역들 중 서로 가깝거나 겹쳐진 것을 합하여 하나의 후보 사각형 영역으로 설정하는 것을 특징으로 하는 컬러코드 이미지 추출방법.
  4. 제1항에 있어서, 상기 (f) 단계는
    상기 검색된 후보 사각형 영역이 소정 크기보다 너무 크거나 작으면 후보에서 제외하는 것을 특징으로 하는 컬러코드 이미지 추출방법.
  5. 삭제
  6. 삭제
  7. 입력 이미지에 포함되며 적어도 두 가지 색상으로 이루어져 정보를 표시하는 컬러코드 이미지를 디코딩하는 장치에 있어서,
    상기 입력이미지로부터 Hue 성분 이미지와 Saturation 이미지를 구한 후 상기 두 이미지의 AND연산하여 생성되어 배경영역과 후보영역이 구분된 이진화 이미지에서 픽셀들을 순차적으로 스캔하여 상기 후보영역에 해당하는 픽셀들에 대해 우선법을 적용하여 컬러코드 이미지에 해당하는 영역을 추출하는 컬러코드 이미지 추출부; 및
    상기 추출된 컬러코드 이미지 영역에 표시된 이미지로부터 코드정보를 추출하는 코드정보 추출부를 포함하는 것을 특징으로 하는 컬러코드 이미지 디코딩 장치.
  8. 제7항에 있어서, 상기 컬러코드 이미지 추출부는
    후보영역 내의 픽셀에서 시계방향으로 90도 회전하였을 때 앞에 있는 픽셀이 후보영역 밖에 있으면 반시계방향으로 회전하고, 그렇지 않으면 현재 픽셀 위치에서 한 픽셀 앞으로 전진하는 방식으로, 현재 픽셀의 위치가 시작점 픽셀로 되돌아 올 때까지 진행하여, 픽셀의 이동과정에서 얻은 픽셀들의 좌표에 기초하여 후보영역의 외각으로 형성되는 사각형의 좌표를 획득하는 것을 특징으로 하는 컬러코드 이미지 디코딩 장치.
  9. 제1항 내지 제 4항 중 어느 한 청구항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020030084713A 2003-11-26 2003-11-26 컬러코드 이미지 검출 방법 및 장치 KR100606404B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030084713A KR100606404B1 (ko) 2003-11-26 2003-11-26 컬러코드 이미지 검출 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030084713A KR100606404B1 (ko) 2003-11-26 2003-11-26 컬러코드 이미지 검출 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20050051029A KR20050051029A (ko) 2005-06-01
KR100606404B1 true KR100606404B1 (ko) 2006-08-02

Family

ID=38666314

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030084713A KR100606404B1 (ko) 2003-11-26 2003-11-26 컬러코드 이미지 검출 방법 및 장치

Country Status (1)

Country Link
KR (1) KR100606404B1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100701292B1 (ko) * 2004-08-17 2007-03-29 (주)아이미디어아이앤씨 이미지 코드 및 그 인식방법과 장치
SG138575A1 (en) * 2006-06-23 2008-01-28 Colorzip Media Inc Method of classifying colors of color based image code
KR100914515B1 (ko) * 2006-06-23 2009-09-02 주식회사 칼라짚미디어 색상 기반 이미지 코드의 색상 판별 방법
KR101112575B1 (ko) * 2010-03-12 2012-02-16 안명호 기준 마크 검출 방법과 이를 이용한 데이터 처리 장치
KR20150057651A (ko) 2013-11-20 2015-05-28 삼성전기주식회사 터치스크린 장치 및 터치 데이터 처리 방법
KR101633455B1 (ko) * 2015-04-15 2016-06-24 한국정보통신주식회사 코드 이미지 스캔 장치 및 방법
CN106874818B (zh) * 2016-08-30 2019-11-22 阿里巴巴集团控股有限公司 一种数字对象唯一标识符doi识别方法与装置
KR20190080275A (ko) * 2017-12-28 2019-07-08 한화에어로스페이스 주식회사 바코드 검출 장치 및 이를 이용한 바코드 검출 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61109375A (ja) * 1984-11-02 1986-05-27 Nippon Telegr & Teleph Corp <Ntt> 記号抽出処理方式
JPH06309498A (ja) * 1993-02-25 1994-11-04 Fujitsu Ltd 画像抽出方式

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61109375A (ja) * 1984-11-02 1986-05-27 Nippon Telegr & Teleph Corp <Ntt> 記号抽出処理方式
JPH06309498A (ja) * 1993-02-25 1994-11-04 Fujitsu Ltd 画像抽出方式

Also Published As

Publication number Publication date
KR20050051029A (ko) 2005-06-01

Similar Documents

Publication Publication Date Title
KR100480781B1 (ko) 치아영상으로부터 치아영역 추출방법 및 치아영상을이용한 신원확인방법 및 장치
KR101971866B1 (ko) 동화상에 있어서 물체를 검출하는 방법 및 장치, 및 그 프로그램을 기억한 기억 매체
JP4755202B2 (ja) 顔特徴の検出方法
US8340420B2 (en) Method for recognizing objects in images
JP4505362B2 (ja) 赤目検出装置および方法並びにプログラム
JP4469873B2 (ja) 画像文書の検索装置、プログラム、及び記録媒体
US7438232B2 (en) Two-dimensional code and information processing method
KR101719549B1 (ko) 차량 번호판 인식을 위한 영상처리방법 및 이를 이용한 차량 번호판 인식 장치
US10255490B2 (en) Method and apparatus for human detection in images
KR101035768B1 (ko) 립 리딩을 위한 입술 영역 설정 방법 및 장치
US7980473B2 (en) Camera based code reading
JP2013065156A (ja) 画像解析装置および画像評価装置
Sun et al. A visual attention based approach to text extraction
KR100606404B1 (ko) 컬러코드 이미지 검출 방법 및 장치
JP4242796B2 (ja) 画像認識方法及び画像認識装置
US8300927B2 (en) Mouth removal method for red-eye detection and correction
KR101249374B1 (ko) 영상에서의 목표형상 검출장치 및 방법
KR101741758B1 (ko) 가려짐에 강인한 깊이정보 사용 캠쉬프트 기반의 실시간 얼굴추적 방법
JP6468880B2 (ja) 文字領域抽出装置及びプログラム
Rampurkar et al. An approach towards text detection from complex images using morphological techniques
TWI417796B (zh) Method of recognizing objects in images
JP2005309717A (ja) マーカ処理方法、マーカ処理装置、プログラム、および、記録媒体
KR100591987B1 (ko) 정보 표시용 이미지 태그 및 그 인식 방법과 장치
JPH11283036A (ja) 対象物検出装置及び対象物検出方法
JPH09305707A (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: 20120718

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130722

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee