KR101328233B1 - 영상처리 시스템의 라벨링 장치 및 방법 - Google Patents

영상처리 시스템의 라벨링 장치 및 방법 Download PDF

Info

Publication number
KR101328233B1
KR101328233B1 KR1020120019746A KR20120019746A KR101328233B1 KR 101328233 B1 KR101328233 B1 KR 101328233B1 KR 1020120019746 A KR1020120019746 A KR 1020120019746A KR 20120019746 A KR20120019746 A KR 20120019746A KR 101328233 B1 KR101328233 B1 KR 101328233B1
Authority
KR
South Korea
Prior art keywords
pixel
value
pixels
unit
axis
Prior art date
Application number
KR1020120019746A
Other languages
English (en)
Other versions
KR20130097993A (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 KR1020120019746A priority Critical patent/KR101328233B1/ko
Publication of KR20130097993A publication Critical patent/KR20130097993A/ko
Application granted granted Critical
Publication of KR101328233B1 publication Critical patent/KR101328233B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/40Analysis of texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

영상처리 시스템의 라벨링 장치 및 방법이 개시된다. 본 발명에서는, 이진화 결과 소정 값을 가지는 영상에 대해, 픽셀의 1차원 좌표값으로 픽셀값을 초기화하고, 초기화된 픽셀값을 기준으로, 픽셀이 속하는 라벨에서의 제1축의 연속된 좌표의 최소값으로 각각 픽셀값을 변환하고, 픽셀이 속하는 라벨에서의 제2축의 연속된 좌표의 최소값으로 각각 픽셀값을 변환하여, 각 라벨의 픽셀에 대해 루트를 결정하고, 2차원 좌표의 값에 대한 1차원 좌표값을 저장하는 룩업 테이블을 이용하여 루트를 탐색한다.

Description

영상처리 시스템의 라벨링 장치 및 방법{LABELING APPARATUS AND METHOD IN IMAGE PROCESSING SYSTEM}
본 발명은 영상처리기술에 관한 것으로서, 보다 상세하게는 영상처리 시스템에서 이진화된 영상을 라벨링하는 장치 및 방법에 관한 것이다.
일반적으로, 디지털 영상은 아날로그 영상과 달리 픽셀 단위로 독립된 색정보를 가진다. 따라서, 영상 내의 오브젝트에 대한 인식을 위해서는 픽셀 단위로 독립된 색정보에 속성을 부가할 필요가 있다.
라벨링이란, 인접하여 연결되어 있는 모든 픽셀에 동일한 번호(라벨)을 부여하고, 다른 연결성분에는 또 다른 번호(라벨)을 부여하는 것을 말한다. 즉, 라벨링은, 현재 자기 자신의 픽셀과 붙어있어서 연결된 영역이거나 또는 같은 색상 범위를 갖는 영역들을 하나의 물체로 간주하는 과정을 말하는 것이다.
라벨링된 영상에서 임의의 번호를 가진 영역만 추출하면 영역분리가 이루어지며, 특별한 영역에 대해서만 크기, 중심좌표, 원주길이 등을 추출하는 것이 가능해진다.
최근 이러한 라벨링은 보통 그래픽 처리장치(Graphic Processing Unit; GPU)를 이용하여 수행되고 있다.
GPU를 이용하여 수행하는 라벨링 기법은 여러가지가 공개되어 있으나, 보통 같은 라벨을 부여한 픽셀과 4방향(아래, 위, 좌측 및 우측)으로 연결되어 있는 픽셀에 대해 같은 라벨을 부여하는 것이 일반적이다. 즉, P(x, y)에 대해, (x+1, y), (x-1, y), (x, y+1), (x, y-1)의 이웃(neighborhood) 픽셀을 스캔하여 라벨을 부여하는 것이, 4방향 라벨링이다.
그러나, 종래의 GPU를 이용하는 라벨링은, 이와 같이 4방향에 대해 수행하기 때문에, 대각선으로 연결되는 픽셀에 대해서는 하나의 라벨로 연결할 수 없어, 연산처리가 복잡해지는 문제점이 있다.
본 발명이 해결하고자 하는 기술적 과제는, GPU를 이용하여 8방향 라벨링을 수행하는 영상처리 시스템의 라벨링 장치 및 방법을 제공하는 것이다.
상기와 같은 기술적 과제를 해결하기 위하여, 본 발명의 라벨링 장치는, 이진화 결과 소정 값을 가지는 영상에 대해, 픽셀의 1차원 좌표값으로 픽셀값을 초기화하는 초기화부; 상기 초기화부에 의해 초기화된 픽셀값을 기준으로, 픽셀이 속하는 라벨에서의 제1축의 연속된 좌표의 최소값으로 각각 픽셀값을 변환하는 제1변환부; 상기 제1변환부에 의해 변환된 픽셀값을 기준으로, 픽셀이 속하는 라벨에서의 제2축의 연속된 좌표의 최소값으로 각각 픽셀값을 변환하는 제2변환부; 각 라벨의 픽셀에 대해 루트를 결정하는 결정부; 및 2차원 좌표의 값에 대한 1차원 좌표값을 저장하는 룩업 테이블을 이용하여 루트를 탐색하는 탐색부를 포함한다.
본 발명의 일실시예에서, 소정 픽셀의 픽셀값에 대하여, 8방향에 위치하는 픽셀이 전부 동일한 픽셀값을 가지는지 확인하는 확인부를 더 포함하는 것이 바람직하다.
본 발명의 일실시예에서, 상기 확인부는, 소정의 제1마스크를 이용하여 픽셀을 스캔하여 확인하는 것이 바람직하다.
본 발명의 일실시예에서, 상기 제1마스크는, (x, y) 픽셀에 대하여, (x, y) 픽셀에 대하여, (x-1, y-1) 픽셀, (x, y-1) 픽셀, (x+1, y-1) 픽셀 및 (x-1, y) 픽셀에 대한 스캔을 수행하도록 구성되는 것이 바람직하다.
본 발명의 일실시예에서, 입력되는 영상에 대하여, 영상의 크기에 대한 복수의 스레드를 생성하는 생성부를 더 포함하는 것이 바람직하다.
본 발명의 일실시예에서, 상기 생성부는, 상기 복수의 스레드를 상기 초기화부, 상기 제1변환부, 상기 제2변환부, 상기 결정부 및 상기 탐색부에 각각 제공하는 것이 바람직하다.
본 발명의 일실시예에서, 상기 제1축은 X축이고, 상기 제2축은 Y축인 것이 바람직하다.
본 발명의 일실시예에서, 상기 제1축은 Y축이고, 상기 제2축은 X축인 것이 바람직하다.
본 발명의 일실시예에서, 상기 결정부는, 소정의 제2마스크를 이용하여 픽셀을 스캔하여 루트를 결정하는 것이 바람직하다.
본 발명의 일실시예에서, 상기 제2마스크는, (x, y) 픽셀(제1픽셀)에 대하여, (x+1, y) 픽셀(제2픽셀), (x-1, y+1) 픽셀(제3픽셀), (x, y+1) 픽셀(제4픽셀) 및 (x+1, y+1) 픽셀(제5픽셀)에 대한 스캔을 수행하도록 구성되는 것이 바람직하다.
본 발명의 일실시예에서, 상기 결정부는, 상기 제2 내지 제5픽셀의 픽셀값이 모두 0인 경우에는, 상기 제1픽셀을 루트로 정의하는 것이 바람직하다.
본 발명의 일실시예에서, 상기 결정부는, 상기 제2 내지 제5픽셀의 픽셀값이 루트로 정의된 픽셀의 픽셀값과 동일한 경우에는, 상기 제1픽셀에 루트인 픽셀의 픽셀값을 지정하는 것이 바람직하다.
본 발명의 일실시예에서, 상기 결정부는, 상기 제2 내지 제5픽셀에 상기 제1픽셀의 픽셀값과 동일한 픽셀값이 존재하는 경우에는, 상기 제1픽셀의 픽셀값을 그대로 지정하는 것이 바람직하다.
본 발명의 일실시예에서, 상기 탐색부는, 소정 픽셀의 픽셀값이 지정하는 픽셀의 1차원 좌표값을 상기 룩업 테이블을 참조로 탐색하여, 탐색된 픽셀이 루트인 경우에는, 상기 소정 픽셀의 픽셀값을 루트의 픽셀값으로 변경하는 것이 바람직하다.
또한, 상기와 같은 기술적 과제를 해결하기 위하여, 본 발명의 라벨링 방법은, (a) 이진화 결과 소정 값을 가지는 영상에 대해, 픽셀의 1차원 좌표값으로 픽셀값을 초기화하는 단계; (b) 초기화된 픽셀값을 기준으로, 픽셀이 속하는 라벨에서의 제1축의 연속된 좌표의 최소값으로 각각 픽셀값을 변환하는 단계; (c) 상기 (b)단계에서 변환된 픽셀값을 기준으로, 픽셀이 속하는 라벨에서의 제2축의 연속된 좌표의 최소값으로 각각 픽셀값을 변환하는 단계; (d) 각 라벨의 픽셀에 대해 루트를 결정하는 단계; 및 (e) 2차원 좌표의 값에 대한 1차원 좌표값을 저장하는 룩업 테이블을 이용하여 루트를 탐색하는 단계를 포함한다.
본 발명의 일실시예에서, (f) 소정 픽셀의 픽셀값에 대하여, 8방향에 위치하는 픽셀이 전부 동일한 픽셀값을 가지는지 확인하는 단계를 더 포함하는 것이 바람직하다.
본 발명의 일실시예에서, (g) 상기 (f)단계의 확인 결과, 8방향에 위치하는 픽셀이 전부 동일한 픽셀값을 가지지 않는 경우에는, 상기 (d) 단계 내지 상기 (f) 단계를 반복하여 수행하는 단계를 더 포함하는 것이 바람직하다.
상기와 같은 본 발명은, 종래의 4방향에 대해서 수행하던 라벨링을 8방향까지 확장할 수 있도록 하는 효과가 있다.
또한, 본 발명은 복수의 스레드를 활용하여 대용량 영상을 실시간으로 처리하도록 하는 효과가 있다.
도 1은 본 발명이 적용되는 영상처리 시스템의 일예시도이다.
도 2는 본 발명에 따른 라벨링 장치의 일실시예 구성도이다.
도 3a 내지 도 3e는 본 발명에 따라 라벨링되는 과정을 설명하기 위한 일예시도이다.
도 4a는 도 2의 루트 결정부가 라벨의 루트를 결정하는 마스크의 일예시도이다.
도 4b는 도 2의 확인부가 8방향이 전부 동일한 픽셀값을 가지는지 확인하는 마스크의 일예시도이다.
도 5는 본 발명에 따른 라벨링 방법을 설명하기 위한 일실시예 흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 해당 구성요소들은 이와 같은 용어들에 의해 한정되지는 않는다. 이 용어들은 하나의 구성요소들을 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 '연결되어' 있다거나, 또는 '접속되어' 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 '직접 연결되어' 있다거나, '직접 접속되어' 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, '포함한다' 또는 '가지다' 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.
도 1은 본 발명이 적용되는 영상처리 시스템의 일예시도이다.
도면에 도시된 바와 같이, 촬영부(1)를 통해 촬영된 영상은, 이진화부(2)에 입력되어 이진화(binarization)되고, 이진화된 영상이 본 발명의 라벨링 장치(3)에 입력된다.
촬영부(1)는 예를 들어 디지털 카메라이지만, 스캐너, 캠코더, 아날로그 카메라 등일 수도 있다. 다만, 아날로그 카메라 등에 의해 영상이 촬영되는 경우에는, 이진화부(2)에 입력되기 전에 디지털 변환이 수행되어야 하는 것임은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 자명하다 할 것이다.
이진화부(2) 및 본 발명의 라벨링 장치(3)는 영상처리 시스템 내부에 제공되는 것이다. 영상처리 시스템은, 예를 들어, 개인용 컴퓨터(PC)일 수 있으나, 이에 한정되는 것은 아니다.
본 발명의 라벨링 장치(2)에 의해 라벨이 부여된 영상은, 영상처리 시스템 내에서 소정의 방식으로 영상처리과정을 거치게 된다. 다만, 이에 대해서는, 본 발명과 무관하므로, 그 설명은 생략하기로 한다.
본 발명이 적용되는 영상처리 시스템은, GPU를 이용하여 영상처리를 수행하는 것이 바람직하다.
도 2는 본 발명에 따른 라벨링 장치의 일실시예 구성도이며, 도 3a 내지 도 3e는 본 발명에 따라 라벨링되는 과정을 설명하기 위한 일예시도이다.
도면에 도시된 바와 같이, 본 발명의 라벨링 장치는, 스레드 생성부(10), 초기화부(20), X축 최소값 변환부(30), Y축 최소값 변환부(40), 루트 결정부(50), 루트 탐색부(60) 및 확인부(70)를 포함한다.
스레드(thread) 생성부(10)는 이진화부(2)로부터 수신하는 영상에 대하여, 영상의 크기에 대하여, 복수의 스레드를 생성하여, 초기화부(20), X축 최소값 변환부(30), Y축 최소값 변환부(40), 루트 결정부(50) 및 루트 탐색부(60)에 각각 스레드를 제공한다.
스레드는, 어떠한 프로세스 내에서 실행되는 흐름의 단위를 말하는 것으로, 본 발명의 라벨링 장치는 GPU를 이용하여 라벨링을 수행하는 것이므로, 복수의 스레드를 생성하여, 초기화부(20), X축 최소값 변환부(30), Y축 최소값 변환부(40), 루트 결정부(50) 및 루트 탐색부(60)의 각각의 기능을 병렬적으로 수행할 수 있다.
다만, 이는 예시적인 것으로서, 본 발명의 라벨링 장치가, 각각의 기능을 병렬적으로 수행하는 것에 한정되는 것은 아니며, 순차적인 기능의 수행을 배제하는 것은 아니다.
초기화부(20)는 이진화부(2)에 의해 이진화된 입력영상 중, 이진화 결과가 소정 값을 가지는 영상(예를 들어, 255)에 대하여 픽셀의 1차원 좌표값으로 픽셀값을 초기화한다.
도 3a는 초기화부(20)가 초기화한 결과를 나타낸다. 도 3a에 도시된 바와 같이, 이진화 결과가 0이 아닌 영상에 대하여, 1차원 좌표값으로 각각 초기화하였다. 도 3a의 예에서, 영상의 크기는 10×10이며, 각 픽셀의 1차원 좌표는 (0, 0) 픽셀에 대해 1을 부여하는 것을 시작으로, (9, 9)픽셀에 100을 부여한다.
따라서, 이진화된 결과가 0이 아닌 (1, 1) 픽셀에 대해서는 12, (1, 2) 픽셀에 대해서는 13과 같은 형식으로, 각 픽셀마다 1차원 좌표값이 부여되어 초기화한 것을 알 수 있다.
또한, 이진화된 영상의 값이 0인 픽셀(예를 들어, (0, 0) 픽셀))에 대해서는 초기화가 진행되지 않았음을 알 수 있다.
X축 최소값 변환부(30)는 초기화부(20)에 의해 초기화된 픽셀값를 기준으로, 픽셀이 속하는 라벨에서의 X축의 연속된 좌표의 최소값으로 각각의 픽셀값을 변환한다.
도 3b는 X축 최소값 변환부(30)의 변환결과를 나타낸다. 도 3a에서 픽셀이 모여있는 부분(즉, 덩어리)에 대해, 본 발명에서 이를 '라벨'이라고 하면, 라벨 P에 대해서는, 각각 연속된 X축 좌표의 최소값은 12, 22, 32, 42이고, 라벨 Q에 대해서는, 연속된 X축 좌표의 최소값은 51이다. 마찬가지로, 라벨 R에 대해서는 각각 연속된 X축 좌표의 최소값은 55, 65, 75, 85임을 알 수 있다.
따라서, X축 최소값 변환부(30)는 도 3b에서와 같이, 픽셀이 속하는 해당 라벨에서 각각 X축의 연속된 좌표의 최소값으로 각각 픽셀값을 변환하였음을 알 수 있다.
도 2에서, Y축 최소값 변환부(40)는, X축 최소값 변환부(30)에 의해 X축의 연속된 좌표의 최소값으로 변환된 픽셀값을, 픽셀이 속하는 라벨에서의 Y축의 연속된 좌표의 최소값으로 변환한다. 도 3c는 Y축 최소값 변환부(40)에 의해 변환된 변환결과를 나타낸다.
도 3b에서, 라벨 P에 대해서는 각각 연속된 Y축 좌표의 최소값은 모두 12이고, 라벨 Q에 대해서는 51, 라벨 R에 대해서는 55임을 알 수 있다. 따라서, Y축 최소값 변환부(40)는 도 3c와 같이, 각각 Y축의 연속된 좌표의 최소값으로 각 픽셀값을 변환하였음을 알 수 있다.
다만, 본 발명의 라벨링 장치의 설명에서는, X축에 대해 최소값으로 픽셀값을 변환하고, Y축에 대해 최소값으로 픽셀값을 변환하는 것을 설명하였으나, 그 선후에 대해서 고정된 것은 아니며, Y축에 대해 먼저 변환하고, X축에 대해 변환하는 것도 가능함은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 자명하다 할 것이다.
도 2의 루트 결정부(50)는 각 라벨의 픽셀에 대해 해당 라벨의 루트(root)를 결정한다. 이때, 루트 결정부(50)는 소정의 마스크(mask)를 이용하여 마스크 상관도(correlation)에 의해 루트를 결정할 수 있다. 도 4a는 도 2의 루트 결정부(50)가 라벨의 루트를 결정하는 마스크의 일예시도이다. 도면에 도시된 바와 같이, 본 발명의 루트 결정부(50)가 사용하는 마스크는, (x, y) 픽셀(E)에 대하여, (x-1, y-1) 픽셀(A), (x, y-1) 픽셀(B), (x+1, y-1) 픽셀(C) 및 (x-1, y) 픽셀(D)에 대한 스캔을 수행하는 마스크이다.
루트 결정부(50)는, 도 4a의 마스크의 E에 해당하는 부분에 픽셀을 위치하고, A 내지 D에 해당하는 픽셀의 픽셀값이 모두 0인 경우에는, E를 루트로 정의한다. 또한, A 내지 D에 해당하는 픽셀에 루트인 픽셀의 픽셀값와 동일한 픽셀값이 존재하는 경우에는, 라벨의 연장선상 또는 라벨과 연결된 한 부분으로 판단하여, 해당 픽셀에 루트인 픽셀의 픽셀값을 지정한다.
또한, A 내지 D에 해당하는 픽셀에 자신의 픽셀값과 동일한 픽셀값이 존재하는 경우에는, 자신의 픽셀값을 그대로 지정한다.
도 3d는 루트 결정부(50)에 의해 결정된 루트를 나타낸다. 즉, 도 3d에서는 (1, 1) 픽셀(픽셀값 12)이 루트로 결정되었음을 알 수 있다.
도 2의 루트 탐색부(60)는 각 라벨의 픽셀에 대하여, 2차원 좌표의 값에 대한 1차원 좌표값을 저장하는 룩업 테이블(look-up table)을 이용하여 루트를 탐색한다.
룩업 테이블이란, 일반적으로 주어진 연산에 대해 미리 계산된 결과들의 집합을 말하는 것으로서, 본 발명의 루트 탐색부(60)가 사용하는 룩업 테이블은, 각각의 픽셀의 2차원 좌표의 값에 대한 1차원 좌표값을 저장하고 있다.
즉, 루트 탐색부(60)는 소정 픽셀의 해당 픽셀값이 지정하는 픽셀의 1차원 좌표값을 룩업 테이블을 참조로 탐색하여, 탐색된 픽셀이 루트인 경우에는, 이 소정 픽셀의 픽셀값을 루트의 픽셀값으로 변경한다.
예를 들어, 도 3d에서, 픽셀 a의 2차원 좌표는 (8, 5)이고, 픽셀 b의 2차원 좌표는 (6, 5), 픽셀 c(루트)의 2차원 좌표는 (1, 1), 픽셀 d의 2차원 좌표는 (4, 2)이다. 또한, 픽셀 a의 1차원 좌표값은 도 3a를 참조로 하면 58이고, 픽셀 b의 1차원 좌표값은 55, 픽셀 c의 1차원 좌표값은 12, 픽셀 d의 1차원 좌표값은 15이다.
루트 탐색부(60)는, 픽셀 a의 픽셀값이 55이므로, 1차원 좌표값이 55인 픽셀 b를 탐색한다. 픽셀 b는 픽셀값이 12이므로, 1차원 좌표값이 12인 픽셀 c를 탐색한다. 픽셀 c는 루트이므로, 픽셀 a에 대하여 루트의 픽셀값인 12로 변경할 수 있다.
또한, 픽셀 d에 대해서는, 픽셀 d는 픽셀값이 12이므로, 1차원 좌표값이 12인 픽셀 c를 탐색한다. 픽셀 c는 루트이므로, 픽셀 d에 대하여 루트의 픽셀값이 12로 변경할 수 있지만, 현재 픽셀 d의 픽셀값은 12이므로, 변경이 요구되지 않는다.
도 3e는 루트 탐색부(60)에 의한 탐색결과를 나타낸다.
한편, 도 2의 확인부(70)는 소정 픽셀의 픽셀값에 대하여 8방향에 위치하는 픽셀이 전부 같은 픽셀값을 가지는지 확인한다. 확인부(70)는 소정 마스크를 이용하여 확인할 수 있다. 도 4b는 도 2의 확인부(70)가 8방향이 전부 동일한 픽셀값을 가지는지 확인하는 마스크의 일예시도이다. 도면에 도시된 바와 같이, 본 발명의 확인부(70)가 사용하는 마스크는, (x, y) 픽셀(E)에 대하여, (x+1, y) 픽셀(F), (x-1, y+1) 픽셀(G), (x, y+1) 픽셀(H) 및 (x+1, y+1) 픽셀(I)에 대한 스캔을 수행하는 마스크이다.
확인부(70)는, 도 4b의 마스크의 E에 해당하는 부분에 픽셀을 위치하고, F 내지 I에 해당하는 픽셀의 픽셀값이 E에 해당하는 픽셀의 픽셀값과 동일하지 않은 경우에는 라벨링이 완료되지 않은 것으로 판단하여, 루트 결정부(50)에 해당 영상을 전달한다.
종래의 라벨링에 의해서는, 라벨 P 내지 Q에 모두 개별적인 라벨값이 할당되지만, 위와 같은 본 발명의 라벨링 장치에 의하면, 동일한 라벨값이 할당되게 됨을 알 수 있다.
도 5는 본 발명에 따른 라벨링 방법을 설명하기 위한 일실시예 흐름도이다.
도면에 도시된 바와 같이, 본 발명의 라벨링 방법은, 촬영부(1)가 영상을 획득하여, 이진화부(2)가 이진화를 수행한 영상에 대하여, 스레드 생성부(10)가 복수의 스레드를 생성할 수 있으며(S1), 이 복수의 스레드는 각각 초기화부(20), X축 최소값 변환부(30), Y축 최소값 변환부(40), 루트 결정부(50) 및 루트 탐색부(60)에 제공되어, 제공되는 스레드에 대하여 각각의 기능이 수행되도록 할 수 있다. 다만, 본 발명의 라벨링 방법이, 하나의 스레드에 의해 생성되는 것을 배제하는 것은 아니다.
이후, 초기화부(20)는 이진화부(2)에 의해 이진화된 입력영상 중, 이진화 결과가 소정 값을 가지는 영상(예를 들어, 255인 영상)에 대하여 픽셀의 1차원 좌표값으로 픽셀값을 초기화한다(S2). S2에 의한 결과는 도 3a와 같다.
X축 최소값 변환부(30)는 S2에서 초기화된 픽셀값을 기준으로, 픽셀이 속하는 라벨에서의 X축의 연속된 좌표의 최소값으로 각각의 픽셀값을 변환한다(S3). S3에 의한 결과는 도 3b와 같다.
Y축 최소값 변환부(40)는 S3에서 X축의 연속된 좌표의 최소값으로 변환된 픽셀값을 기준으로, 픽셀에 속하는 라벨에서의 Y축의 연속된 좌표의 최소값으로 픽셀값을 변환한다(S4). S4에 의한 결과는 도 3c와 같다.
다만, 본 발명의 라벨링 방법의 설명에서는, X축에 대해 최소값으로 픽셀값을 변환하고(S3), Y축에 대해 최소값으로 픽셀값을 변환(S4)하는 것을 설명하였으나, 그 선후에 대해서 고정된 것은 아님은 이미 설명한 바와 같다.
루트 결정부(50)는 각 라벨의 루트를 소정 마스크를 이용하여 결정한다(S5). S5의 결과는 도 3d와 같다.
루트 탐색부(60)는 각 라벨의 픽셀에 대하여, 2차원 좌표의 값에 대한 1차원 좌표값을 저장하는 룩업 테이블을 이용하여 루트를 탐색한다(S6). S6의 결과는 도 3e와 같다.
이후, 확인부(70)는, 소정 픽셀의 픽셀값에 대하여 8방향에 위치하는 픽셀이 전부 같은 픽셀값을 가지는지 확인한다(S7). S7의 확인 결과, 8방향에 위치하는 픽셀이 전부 동일한 픽셀값을 가지는 경우에는, 라벨링 결과 영상을 출력하고(S8), 8방향에 위치하는 픽셀이 전부 동일한 픽셀값을 가지지 않는 경우에는, S5로 진행하여, 루트를 다시 결정한다.
한편, 본 발명의 실시예들은 컴퓨터로 판독 가능한 기록매체에 컴퓨터가 읽어들일 수 있는 프로그램 코드를 기록하여 구현하는 것이 가능하다. 본 발명의 실시예들이 소프트웨어를 이용하여 실행되는 경우, 본 발명의 구성수단들은 필요한 작업을 실행하는 코드 세그먼트들이다. 또한, 프로그램 또는 코드 세그먼트들은 컴퓨터의 프로세서로 판독 가능한 매체에 저장되거나 전송 매체 또는 통신망을 통해 반송파와 결합된 컴퓨터 데이터 신호로 전송될 수 있다.
컴퓨터로 판독 가능한 기록매체에는 컴퓨터 시스템이 읽어들일 수 있는 데이터를 저장하는 모든 종류의 기록장치가 포함될 수 있다. 예컨대, 컴퓨터 판독가능 기록매체에는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 포함될 수 있다. 또한, 네트워크로 연결된 컴퓨터 시스템에 컴퓨터 판독가능 기록매체를 분산배치하여 컴퓨터가 읽어들일 수 있는 코드가 분산 방식으로 저장되고 실행되도록 할 수 있다.
이상에서 본 발명에 따른 실시예들이 설명되었으나, 이는 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 범위의 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 다음의 특허청구범위에 의해서 정해져야 할 것이다.
1: 촬영부 2: 이진화부
3: 라벨링 장치 10: 스레드 생성부
20: 초기화부 30: X축 최소값 변환부
40: Y축 최소값 변환부 50: 루트 결정부
60: 루트 탐색부 70: 확인부

Claims (17)

  1. 이진화 결과 소정 값을 가지는 영상에 대해, 픽셀의 1차원 좌표값으로 픽셀값을 초기화하는 초기화부;
    상기 초기화부에 의해 초기화된 픽셀값을 기준으로, 픽셀이 속하는 라벨에서의 제1축의 연속된 좌표의 최소값으로 각각 픽셀값을 변환하는 제1변환부;
    상기 제1변환부에 의해 변환된 픽셀값을 기준으로, 픽셀이 속하는 라벨에서의 제2축의 연속된 좌표의 최소값으로 각각 픽셀값을 변환하는 제2변환부;
    각 라벨의 픽셀에 대해 루트를 결정하는 결정부; 및
    2차원 좌표의 값에 대한 1차원 좌표값을 저장하는 룩업 테이블을 이용하여 루트를 탐색하는 탐색부를 포함하는 라벨링 장치.
  2. 제1항에 있어서,
    소정 픽셀의 픽셀값에 대하여, 8방향에 위치하는 픽셀이 전부 동일한 픽셀값을 가지는지 확인하는 확인부를 더 포함하는 라벨링 장치.
  3. 제2항에 있어서, 상기 확인부는,
    소정의 제1마스크를 이용하여 픽셀을 스캔하여 확인하는 라벨링 장치.
  4. 제3항에 있어서, 상기 제1마스크는,
    (x, y) 픽셀에 대하여, (x-1, y-1) 픽셀, (x, y-1) 픽셀, (x+1, y-1) 픽셀 및 (x-1, y) 픽셀에 대한 스캔을 수행하도록 구성되는 라벨링 장치.
  5. 제1항에 있어서,
    입력되는 영상에 대하여, 영상의 크기에 대한 복수의 스레드를 생성하는 생성부를 더 포함하는 라벨링 장치.
  6. 제5항에 있어서, 상기 생성부는,
    상기 복수의 스레드를 상기 초기화부, 상기 제1변환부, 상기 제2변환부, 상기 결정부 및 상기 탐색부에 각각 제공하는 라벨링 장치.
  7. 제1항에 있어서, 상기 제1축은 X축이고, 상기 제2축은 Y축인 라벨링 장치.
  8. 제1항에 있어서, 상기 제1축은 Y축이고, 상기 제2축은 X축인 라벨링 장치.
  9. 제1항에 있어서, 상기 결정부는,
    소정의 제2마스크를 이용하여 픽셀을 스캔하여 루트를 결정하는 라벨링 장치.
  10. 제9항에 있어서, 상기 제2마스크는,
    (x, y) 픽셀(제1픽셀)에 대하여, (x+1, y) 픽셀(제2픽셀), (x-1, y+1) 픽셀(제3픽셀), (x, y+1) 픽셀(제4픽셀) 및 (x+1, y+1) 픽셀(제5픽셀)에 대한 스캔을 수행하도록 구성되는 라벨링 장치.
  11. 제10항에 있어서, 상기 결정부는,
    상기 제2 내지 제5픽셀의 픽셀값이 모두 0인 경우에는, 상기 제1픽셀을 루트로 정의하는 라벨링 장치.
  12. 제10항에 있어서, 상기 결정부는,
    상기 제2 내지 제5픽셀의 픽셀값이 루트로 정의된 픽셀의 픽셀값과 동일한 경우에는, 상기 제1픽셀에 루트인 픽셀의 픽셀값을 지정하는 라벨링 장치.
  13. 제10항에 있어서, 상기 결정부는,
    상기 제2 내지 제5픽셀에 상기 제1픽셀의 픽셀값과 동일한 픽셀값이 존재하는 경우에는, 상기 제1픽셀의 픽셀값을 그대로 지정하는 라벨링 장치.
  14. 제1항에 있어서, 상기 탐색부는,
    소정 픽셀의 픽셀값이 지정하는 픽셀의 1차원 좌표값을 상기 룩업 테이블을 참조로 탐색하여, 탐색된 픽셀이 루트인 경우에는, 상기 소정 픽셀의 픽셀값을 루트의 픽셀값으로 변경하는 라벨링 장치.
  15. (a) 이진화 결과 소정 값을 가지는 영상에 대해, 픽셀의 1차원 좌표값으로 픽셀값을 초기화하는 단계;
    (b) 초기화된 픽셀값을 기준으로, 픽셀이 속하는 라벨에서의 제1축의 연속된 좌표의 최소값으로 각각 픽셀값을 변환하는 단계;
    (c) 상기 (b)단계에서 변환된 픽셀값을 기준으로, 픽셀이 속하는 라벨에서의 제2축의 연속된 좌표의 최소값으로 각각 픽셀값을 변환하는 단계;
    (d) 각 라벨의 픽셀에 대해 루트를 결정하는 단계; 및
    (e) 2차원 좌표의 값에 대한 1차원 좌표값을 저장하는 룩업 테이블을 이용하여 루트를 탐색하는 단계를 포함하는 라벨링 방법.
  16. 제15항에 있어서,
    (f) 소정 픽셀의 픽셀값에 대하여, 8방향에 위치하는 픽셀이 전부 동일한 픽셀값을 가지는지 확인하는 단계를 더 포함하는 라벨링 방법.
  17. 제16항에 있어서,
    (g) 상기 (f)단계의 확인 결과, 8방향에 위치하는 픽셀이 전부 동일한 픽셀값을 가지지 않는 경우에는, 상기 (d) 단계 내지 상기 (f) 단계를 반복하여 수행하는 단계를 더 포함하는 라벨링 방법.
KR1020120019746A 2012-02-27 2012-02-27 영상처리 시스템의 라벨링 장치 및 방법 KR101328233B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120019746A KR101328233B1 (ko) 2012-02-27 2012-02-27 영상처리 시스템의 라벨링 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120019746A KR101328233B1 (ko) 2012-02-27 2012-02-27 영상처리 시스템의 라벨링 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20130097993A KR20130097993A (ko) 2013-09-04
KR101328233B1 true KR101328233B1 (ko) 2013-11-14

Family

ID=49450101

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120019746A KR101328233B1 (ko) 2012-02-27 2012-02-27 영상처리 시스템의 라벨링 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101328233B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05233807A (ja) * 1991-12-25 1993-09-10 Sumitomo Metal Ind Ltd ラベリング処理装置及びラベリング処理方法
JPH07101450B2 (ja) * 1987-05-27 1995-11-01 株式会社日立製作所 ラベリングプロセツサ
JPH07118013B2 (ja) * 1988-05-31 1995-12-18 富士通株式会社 画像データのラベリング方式
KR20090027373A (ko) * 2007-09-12 2009-03-17 주식회사 코아로직 영상 라벨링 장치와 방법 및 그 기록매체

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07101450B2 (ja) * 1987-05-27 1995-11-01 株式会社日立製作所 ラベリングプロセツサ
JPH07118013B2 (ja) * 1988-05-31 1995-12-18 富士通株式会社 画像データのラベリング方式
JPH05233807A (ja) * 1991-12-25 1993-09-10 Sumitomo Metal Ind Ltd ラベリング処理装置及びラベリング処理方法
KR20090027373A (ko) * 2007-09-12 2009-03-17 주식회사 코아로직 영상 라벨링 장치와 방법 및 그 기록매체

Also Published As

Publication number Publication date
KR20130097993A (ko) 2013-09-04

Similar Documents

Publication Publication Date Title
KR101030430B1 (ko) 영상 처리 장치와 방법 및 그 기록매체
JP5826081B2 (ja) 画像処理装置、文字認識方法及びコンピュータプログラム
JP5843000B2 (ja) カラーチャート検出装置、カラーチャート検出方法及びカラーチャート検出用コンピュータプログラム
JP5701181B2 (ja) 画像処理装置、画像処理方法及びコンピュータプログラム
US9219841B2 (en) Image-processing device identifying object in image specified by encircling line
US20100158375A1 (en) Signal processing apparatus, signal processing method, computer-readable medium and computer data signal
WO2012014264A1 (ja) 二次元コードリーダおよびプログラム
JP2012033035A (ja) 二次元コードリーダおよびプログラム
WO2015002719A1 (en) Method of improving contrast for text extraction and recognition applications
JP4582204B2 (ja) 画像処理装置、画像変換方法、およびコンピュータプログラム
JP5887264B2 (ja) 物体認識装置、方法、プログラム、および該ソフトウェアを格納したコンピュータ可読媒体
US8774524B2 (en) Image processing apparatus, image processing method, and storage medium of image processing method
JP5645612B2 (ja) 画像処理装置、画像処理方法、プログラム、及び記憶媒体
JP2006127216A (ja) 2次元コードおよび情報処理方法
JP5700221B2 (ja) マーカ判定装置、マーカ判定検出システム、マーカ判定検出装置、マーカ、マーカ判定方法及びそのプログラム
KR20200080378A (ko) 차량의 번호판 인식을 위한 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
KR101328233B1 (ko) 영상처리 시스템의 라벨링 장치 및 방법
JP5979008B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP2008206073A (ja) 画像処理装置、制御方法、プログラム、及び記憶媒体
JP4569785B2 (ja) 二値化装置及び二値化処理プログラム
US9031324B2 (en) Image-processing device specifying encircling line for identifying sub-region of image
JP5337844B2 (ja) 領域検出装置、領域検出方法及びプログラム
JP2004038530A (ja) 画像処理方法、同方法の実行に用いるプログラム及び画像処理装置
JP2012033033A (ja) 物品検出装置およびプログラム
WO2020170291A1 (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: 20171107

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee