KR101871379B1 - 바코드 인식 장치 - Google Patents

바코드 인식 장치 Download PDF

Info

Publication number
KR101871379B1
KR101871379B1 KR1020160108543A KR20160108543A KR101871379B1 KR 101871379 B1 KR101871379 B1 KR 101871379B1 KR 1020160108543 A KR1020160108543 A KR 1020160108543A KR 20160108543 A KR20160108543 A KR 20160108543A KR 101871379 B1 KR101871379 B1 KR 101871379B1
Authority
KR
South Korea
Prior art keywords
pattern
pattern matching
scan lines
barcode
matching error
Prior art date
Application number
KR1020160108543A
Other languages
English (en)
Other versions
KR20180023363A (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 KR1020160108543A priority Critical patent/KR101871379B1/ko
Publication of KR20180023363A publication Critical patent/KR20180023363A/ko
Application granted granted Critical
Publication of KR101871379B1 publication Critical patent/KR101871379B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition

Landscapes

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

Abstract

바코드 영역을 포함하는 입력 영상을 획득하는 영상 획득부, 상기 입력 영상을 업샘플링 후 이진화하여 상기 바코드 영역의 이진화 영상을 생성하는 전처리부 및 상기 바코드 영역의 이진화 영상에서 복수의 스캔라인을 기준으로 숫자 패턴들과의 패턴 매칭을 수행하여, 상기 복수의 스캔라인 각각의 패턴 매칭 결과를 산출하고, 상기 복수의 스캔라인 각각의 패턴 매칭 결과를 비교하여 최종적으로 바코드의 숫자 패턴을 인식하는 패턴 인식부를 포함하는 바코드 인식 장치가 개시된다.

Description

바코드 인식 장치{APPARATUS FOR BARCODE RECOGNITION}
본 발명은 바코드 인식 장치에 관한 것으로, 보다 상세하게는 영상에 포함되는 1차원 바코드를 인식하는 바코드 인식 장치에 관한 것이다.
바코드는 20자리 내외의 숫자를 바(bar)와 같은 기하학적인 형태로 표현하여 기계적인 인식이 쉽도록 저장하는 방식으로, 1980년대에 개발되어 현재 마트 등과 같이 물류량이 많은 곳에서의 물류 관리를 위해 널리 사용되고 있다.
이러한 바코드는 UPC, EAN ITF 등과 같은 1차원 바코드 또는 QR code, data matrix, PDF41 등과 같은 2차원 바코드와 같이 다양한 포맷이 존재하는데, 그 인식 방법은 유사하다.
종래의 바코드 인식 장치로는 적외선 스캐너가 대부분이었으나, 최근에는 영상 기반의 바코드 인식 장치가 주로 사용되고 있다. 그러나, 영상 기반의 바코드 인식 장치는 획득하는 영상의 특성에 따라 인식 성능에 차이가 많이 발생한다. 예를 들면, 고르지 못한 조명상태, 기하학적인 바코드의 왜곡, 카메라의 성능, 먼지나 낙서 등에 의한 바코드의 훼손 등을 영상 기반의 바코드 인식 장치의 성능을 저하시키는 주요 원인으로 볼 수 있다. 또한, 최근 물류량의 증가에 따라 바코드의 정보량 또한 증대되어 심볼의 밀집도가 증가되고 있어 바코드 인식 장치에서 충분한 해상도를 확보하기 힘들어 바코드를 인식하는 데 어려움이 있다.
이에 더하여, 일반적으로 바코드 인식 장치는 바코드 영역에 하나의 스캔라인을 분석하여 해당 바코드의 숫자 패턴을 판독하므로, 바코드 인식의 신뢰도를 향상시키는 데 한계가 있다. 이에 바코드 영역의 반복적인 스캔을 통해 복수의 스캔라인을 획득하고 이를 분석하여 해당 바코드의 숫자 패턴을 판독하는 방법이 제안되었으나, 복수의 스캔라인 각각 독립적인 판단이 이루어질 뿐이므로 이러한 방법 또한 바코드 인식의 높은 신뢰도가 보장되지는 않는다. 아울러, 상술한 바와 같이 충분한 해상도의 바코드 영상의 획득이 보장되지 않으므로 바코드 인식의 신뢰도를 향상시키는 데 어려움이 있다.
본 발명의 일측면은 바코드 영역을 포함하는 영상의 전처리 단계에서 영상의 유효 해상도를 확장시키고, 해당 영상에서 복수의 스캔라인을 획득하고 패턴 매칭을 수행하고, 복수의 패턴 매칭 결과를 종합적으로 분석하여 바코드의 숫자 패턴을 인식하는 바코드 인식 장치를 제공한다.
본 발명의 일측면은 바코드 인식 장치에 있어서, 바코드 영역을 포함하는 입력 영상을 획득하는 영상 획득부, 상기 입력 영상을 업샘플링 후 이진화하여 상기 바코드 영역의 이진화 영상을 생성하는 전처리부 및 상기 바코드 영역의 이진화 영상에서 복수의 스캔라인을 기준으로 숫자 패턴들과의 패턴 매칭을 수행하여, 상기 복수의 스캔라인 각각의 패턴 매칭 결과를 산출하고, 상기 복수의 스캔라인 각각의 패턴 매칭 결과를 비교하여 최종적으로 바코드의 숫자 패턴을 인식하는 패턴 인식부를 포함한다.
한편, 상기 패턴 인식부는, 상기 복수의 스캔라인을 기준으로 숫자 패턴들과의 패턴 매칭을 수행하여 상기 복수의 스캔라인 각각의 패턴 매칭 오차 및 패턴 인식 결과를 포함하는 패턴 매칭 결과를 산출하고, 상기 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차와 미리 정해진 두 개의 임계치를 비교하여 해당 스캔라인의 패턴 인식 결과를 바코드의 숫자 패턴으로 인식할지 여부를 결정할 수 있다.
또한, 상기 패턴 인식부는, 상기 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차와 미리 정해진 두 개의 임계치의 비교 결과, 상기 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차가 상기 두 개의 임계치 중 작은 값인 최종 임계치보다 작거나 같은 경우, 해당 스캔라인의 패턴 인식 결과를 바코드의 숫자 패턴으로 인식하고, 상기 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차가 상기 두 개의 임계치 중 큰 값인 초기 임계치보다 크거나 같은 경우, 해당 스캔라인의 패턴 인식 결과를 버릴 수 있다.
또한, 상기 패턴 인식부는, 상기 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차와 미리 정해진 두 개의 임계치의 비교 결과, 상기 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차가 상기 두 개의 임계치 사이에 포함되는 경우, 해당 스캔라인의 패턴 매칭 오차와, 해당 패턴 인식 결과와 동일한 패턴 인식 결과를 갖는 다른 스캔라인의 패턴 매칭 오차를 조합하여 최종 패턴 매칭 오차를 산출하고, 상기 최종 패턴 매칭 오차와 상기 최종 임계치를 비교하여 상기 동일한 패턴 인식 결과를 바코드의 숫자 패턴으로 인식할지 여부를 결정할 수 있다.
또한, 상기 전처리부는, 상기 입력 영상을 선형보간법을 이용하여 업샘플링하고 이진화하여 상기 바코드 영역의 이진화 영상을 생성할 수 있다.
상술한 본 발명의 일측면에 따르면 1차원 패턴의 바코드 영역을 포함하는 영상을 획득하면 소정의 전처리 단계를 수행하여 유효 해상도를 확장시킬 수 있으며, 이러한 영상으로부터 바코드 영역 분석 시, 바코드 영역에서의 복수의 스캔라인을 분석하고, 각 스캔 라인의 분석 결과를 비교하여 최종적으로 바코드의 숫자 패턴을 인식함으로써 영상 기반 바코드 인식의 정확도를 향상시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 바코드 인식 장치의 제어 블록도이다.
도 2는 종래의 영상 기반 바코드 인식 알고리즘에 따른 바코드 영역의 이진화 영상과, 본 발명의 일 실시예에 따른 바코드 인식 장치에서 생성한 바코드 영역의 이진화 영상의 일 예이다.
도 3은 종래의 영상 기반 바코드 인식 알고리즘에 따른 바코드 인식 성공도와 본 발명의 일 실시예에 따른 바코드 인식 장치에서의 바코드 인식 성공도를 비교하기 위한 그래프이다.
도 4 및 도 5는 본 발명의 일 실시예에 따른 바코드 인식 방법을 설명하기 위한 순서도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예와 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 바코드 인식 장치의 제어 블록도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 바코드 인식 장치(100)는 영상 획득부(110), 전처리부(120) 및 패턴 인식부(130)를 포함하여, 영상에 포함되는 바코드 영역을 분석하여 숫자 패턴을 인식할 수 있다.
특히, 본 발명의 일 실시예에 따른 바코드 인식 장치(100)는 1차원 패턴의 바코드 영역을 포함하는 영상을 획득하면 소정의 전처리 단계를 수행하여 유효 해상도를 확장시킬 수 있으며, 이러한 영상으로부터 바코드 영역 분석 시, 바코드 영역에서의 복수의 스캔 라인을 분석하고, 각 스캔 라인의 분석 결과를 비교하여 최종적으로 바코드의 숫자 패턴을 인식함으로써 영상 기반 바코드 인식의 정확도를 향상시킬 수 있다.
이하, 도 1에 도시된 바코드 인식 장치(100)의 각 구성요소에 대하여 구체적으로 설명하기로 한다.
먼저, 영상 획득부(110)는 바코드 영역을 포함하는 영상을 획득할 수 있다. 이를 위해, 영상 획득부(110)는 카메라, 조명 장치 등을 포함하여 구현될 수 있다. 영상 획득부(110)는 인식하고자 하는 바코드 영역이 포함되도록 영상을 촬영하여 입력 영상을 생성하고, 생성한 입력 영상을 전처리부(120)에 전달할 수 있다.
전처리부(120)는 입력 영상에 포함되는 바코드를 인식할 수 있도록 영상을 업샘플링 후 이진화하여 유효 해상도가 확장된 바코드 영역의 영상을 획득하고, 해당 영상을 패턴 인식부(130)로 전달할 수 있다. 이때, 유효 해상도란, 영상 자체의 해상도와 실제 인식 대상, 즉, 바코드 영역의 해상도의 차이를 구분하기 위하여 아래의 수학식 1과 같이 정의할 수 있다.
Figure 112016082928707-pat00001
일반적으로 바코드 인식 시스템은 통신시스템의 수신기와 유사하여, 유효 해상도가 1 화소 이상이면 바코드의 인식이 가능하다고 생각할 수 있으나, 실제로는 바코드 바(bar)의 경계와 영상의 화소 간의 동기화가 되지 않기 때문에 보다 많은 수의 샘플링이 필요하다. 따라서, 전처리부(120)는 패턴 인식부(130)에서의 바코드 인식의 정확도를 높일 수 있도록 바코드 영역의 영상의 유효 해상도를 확장시킬 수 있다.
구체적으로는, 종래의 영상 기반 바코드 인식 알고리즘은 아래의 표 1과 같다.
Figure 112016082928707-pat00002
표 1을 참조하면, 종래의 영상 기반 바코드 인식 알고리즘에서는 바코드 영역을 포함하는 입력 영상을 밝기영상으로 변환하고, 컨트라스트 평활화를 수행한 뒤 이진화할 수 있다.
반면, 전처리부(120)는 입력 영상의 이진화 단계 이전에 아래의 수학식 2와 같이 업샘플링 단계를 포함할 수 있다.
Figure 112016082928707-pat00003
수학식 2에서 (n,m)은 업샘플링된 입력 영상의 화소공간에서의 화소 위치(n: 수평, m: 수직)을 의미하고,
Figure 112016082928707-pat00004
는 각각 업샘플링 전의 왼쪽 위, 왼쪽 아래, 오른쪽 위, 오른쪽 아래 화소의 픽셀값, s는 업샘플링 단위(예를 들어, s=2이면 2배 확장)를 의미하고,
Figure 112016082928707-pat00005
는 각각 수평, 수직 방향의 가중치로, 업샘플링 이전에 가까운 픽셀에 선형적인 가중치를 제공한다.
일반적으로 영상에 샘플링이 수행되면 기존의 해상도를 손실하게 되나, 바코드 영역은 일정한 간격, 직선, 검정과 흰색의 이진값으로만 구성된다는 특징을 이용하면 샘플링 이전의 영상이 가지고 있던 정보를 복원할 수 있다. 이를 위해, 전처리부(120)는 선형보간법을 이용하여 바코드 영역을 포함하는 입력영상을 업샘플링할 수 있다. 다시 말하면, 전처리부(120)는 선형보간법을 이용하여 바코드 영역을 포함하는 입력영상을 업샘플링함으로써 입력 영상에서 바코드 영역의 해상도 확장이 가능하다. 그리고, 전처리부(120)는 업샘플링한 입력 영상을 이진화하여 바코드 영역의 이진화 영상을 생성하고 이를 패턴 인식부(130)로 전달할 수 있다. 패턴 인식부(130)는 이러한 바코드 영역의 이진화 영상을 분석하여 패턴 매칭을 수행하는데, 바코드 영역에서 부-픽셀 단위의 정교한 바의 경계 찾기가 가능하며, 결과적으로는 바코드 인식의 정확도를 높일 수 있다. 이와 관련하여, 도 2 및 도 3을 참조하여 설명하기로 한다.
도 2는 종래의 영상 기반 바코드 인식 알고리즘에 따른 바코드 영역의 이진화 영상과, 본 발명의 일 실시예에 따른 바코드 인식 장치에서 생성한 바코드 영역의 이진화 영상의 일 예이고, 도 3은 종래의 영상 기반 바코드 인식 알고리즘에 따른 바코드 인식 성공도와 본 발명의 일 실시예에 따른 바코드 인식 장치에서의 바코드 인식 성공도를 비교하기 위한 그래프이다.
먼저, 도 2를 참조하면, 도 2의 (a)는 종래의 영상 기반 바코드 인식 알고리즘에 따른 바코드 영역의 이진화 영상, 즉, 입력 영상에서 발췌한 발코드 영역의 영상을 그대로 이진화한 영상이고, 도 2의 (b)는 전처리부(120)에서 생성한 바코드 영역의 이진화 영상, 즉, 입력 영상을 업샘플링(x5)한 뒤 이진화한 영상으로, 도 2의 (a)와 도 2의 (b)를 비교하면 시각적으로도 입력 영상을 업샘플링한 뒤 이진화하는 경우 보다 명료한 바코드 영역의 이진화 영상을 획득할 수 있음을 확인할 수 있다.
또한, 도 3과 같은 그래프를 획득하기 위해, 라즈베리 카메라를 사용하여 실험실 환경에서 320x240(CIF)와 640X480(VGA) 해상도로 바코드 영역을 포함하는 영상을 획득하였으며, 이때, 획득하는 영상에서의 바코드 영역은 영상 전체의 수평축을 기준으로 20%에서 80%까지 다양한 비율을 차지하도록 설정하였다. 그리고, 영상의 업샘플링 비율을 1에서 7까지 달리하고 바코드 영역의 이진화 영상을 획득하였으며, 이를 분석하여 바코드 인식 성공도를 산출하는 방식으로 업샘플링 비율에 따른 바코드 인식 성능 변화를 실험하였다. 그 결과, 도 3과 같은 그래프를 획득하였다.
도 3을 참조하면, 종래의 영상 기반 바코드 인식 알고리즘에 따른 바코드 인식의 정확도, 즉, 도 3에서의 1배의 비율로 업샘플링한 뒤 이진화하는 경우, 바코드 인식의 정확도에 비해, 입력 영상을 3배 ~ 5배의 비율로 업샘플링한 뒤 이진화하는 경우, 해당 영상으로부터의 바코드 인식 정확도가 향상됨을 확인할 수 있다. 이때, 입력 영상을 5배 이상의 비율로 업샘플링한 뒤 이진화하는 경우, 해당 영상으로부터의 바코드 인식 정확도의 향상은 포화 상태에 이르는 것을 확인할 수 있다.
아래의 표 2는 "511501343074560816"의 숫자 패턴을 갖는 바코드를 표 1과 같이 종래의 바코드 인식 알고리즘을 이용하여 인식한 결과와, 본 발명의 일 실시예에 따른 바코드 인식 장치(100)에서의 인식 결과를 나타낸 표이다.
Figure 112016082928707-pat00006
표 2를 참조하면, 본 발명의 일 실시예에 따른 바코드 인식 장치(100)의 경우, 바코드 영역이 포함된 영상을 업샘플링 후 이진화하여 생성한 바코드 영역의 이진화 영상으로부터 바코드 인식을 수행하는데, 그 결과 종래의 바코드 인식 알고리즘, 즉, 입력 영상의 업샘플링 없이 이진화하여 생성한 바코드 영역의 이진화 영상으로부터 바코드 인식을 수행하는 방식에 비해 평균 인식률이 향상됨을 확인할 수 있다. 특히, 해상도가 낮은 경우 인식률의 차이가 더 높음을 확인할 수 있다.
다시, 도 1을 참조하면, 패턴 인식부(130)는 바코드 영역의 이진화 영상을 분석하여 바코드의 숫자 패턴을 인식할 수 있다. 패턴 인식부(130)는 바코드 인식의 오인률을 낮춤과 동시에 인식률을 높일 수 있도록 복수의 스캔라인을 이용하여 바코드를 판독할 수 있다.
구체적으로는, 패턴 인식부(130)는 바코드 영역의 이진화 영상을 스캔하여 복수의 스캔라인을 획득할 수 있다. 그리고, 복수의 스캔라인을 기준으로 숫자 패턴들과의 패턴 매칭을 수행하여 패턴 매칭 결과를 각각 산출할 수 있다.
여기에서, 패턴 인식부(130)는 다음과 같은 방식으로 패턴 매칭을 수행할 수 있다. 먼저, 패턴 인식부(130)는 스캔라인의 연속적인 검정색 영역의 픽셀과 흰색 영역의 픽셀을 계수하여 스캔라인의 패턴 값을 산출할 수 있다(표 1의 4)참조). 패턴 인식부(130)는 스캔라인의패턴값을 산출하면, 미리 저장된 복수의 숫자 패턴값들과 비교할 수 있다. 패턴 인식부(130)는 아래의 수학식 3과 같이 제1 스캔라인의 패턴 값과 복수의 숫자 패턴값들 각각의 차, 즉, 패턴 매칭 오차를 산출할 수 있다.
Figure 112016082928707-pat00007
수학식 3에서 ds는 스캔라인 전체의 패턴 매칭 오차를 나타내고, c(i)는 총 n개의 바로 구성된 바코드의 경우, 영상 스캔라인의 이진화된 바의 패턴 (길이) 값, codecc(i)는 숫자(CC)에 해당하는 바의 패턴(길이) 패턴 값을 의미한다.
패턴 인식부(130)는 복수의 숫자 패턴 값들 중에서 가장 작은 패턴 매칭 오차 값을 갖는 숫자 패턴 값에 해당하는 숫자 패턴을 바코드의 숫자 패턴으로 추정할 수 있으며, 이하의 설명에서는 추정된 숫자 패턴을 패턴 인식 결과라 할 수 있다.
패턴 인식부(130)는 이와 같이 복수의 스캔라인을 기준으로 숫자 패턴들과의 패턴 매칭을 수행하여 복수의 스캔라인 각각의 패턴 매칭 오차 및 패턴 인식 결과를 포함하는 패턴 매칭 결과를 산출할 수 있다. 패턴 인식부(130)는 이러한 복수의 스캔라인 각각의 패턴 매칭 결과를 비교하여 최종적으로 바코드의 숫자 패턴을 인식할 수 있다.
먼저, 패턴 인식부(130)는 복수의 스캔라인 각각의 패턴 매칭 오차를 미리 정해진 임계치와 비교할 수 있다. 이때, 패턴 인식부(130)는 두 개의 임계치를 사용하는데, 최종 임계치(T1) 및 최종 임계치(T1) 보다 큰 값을 갖는 초기 임계치(T2)를 설정하고, 복수의 스캔라인 각각의 패턴 매칭 오차가 최종 임계치(T1) 보다 작거나 같은지, 최종 임계치(T1)과 초기 임계치(T2) 사이에 포함되는지, 또는, 초기 임계치(T2) 보다 크거나 같은지를 확인할 수 있다.
패턴 인식부(130)는 복수의 스캔라인 각각의 패턴 매칭 오차와 미리 정해진 두 개의 임계치와의 비교 결과에 따라, 해당 스캔라인의 패턴 인식 결과를 바코드의 최종 숫자 패턴으로 인식하거나, 해당 스캔라인의 패턴 인식 결과를 버리거나, 또는, 해당 스캔라인의 패턴 인식 결과와 다른 스캔라인의 패턴 인식 결과를 비교하고, 그 결과에 따라 해당 스캔라인의 패턴 인식 결과를 바코드의 최종 숫자 패턴으로 인식하거나, 해당 스캔라인의 패턴 인식 결과를 버릴 수 있다.
예를 들면, 패턴 인식부(130)는 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차와 미리 정해진 두 개의 임계치와의 비교 결과, 해당 스캔라인의 패턴 매칭 오차가 최종 임계치(T1) 보다 작거나 같은 경우, 해당 스캔라인의 패턴 인식 결과를 바코드의 최종 숫자 패턴으로 인식할 수 있다.
또는, 패턴 인식부(130)는 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차와 미리 정해진 두 개의 임계치와의 비교 결과, 해당 스캔라인의 패턴 매칭 오차가 초기 임계치(T2) 보다 크거나 같은 경우, 해당 스캔라인의 패턴 인식 결과를 버릴 수 있다.
또는, 패턴 인식부(130)는 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차와 미리 정해진 두 개의 임계치와의 비교 결과, 해당 스캔라인의 패턴 매칭 오차가 최종 임계치(T1)과 초기 임계치(T2) 사이에 포함되는 경우, 해당 스캔라인의 패턴 인식 결과와 다른 스캔라인의 패턴 인식 결과를 비교하고, 그 결과에 따라 해당 스캔라인의 패턴 인식 결과를 바코드의 최종 숫자 패턴으로 인식하거나, 해당 스캔라인의 패턴 인식 결과를 버릴 수 있다.
구체적으로는, 패턴 인식부(130)는 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 인식 결과와 다른 스캔라인의 패턴 인식 결과가 동일한지 또는 다른지를 비교할 수 있다. 그 결과, 패턴 인식 결과가 다른 경우, 해당 스캔라인의 패턴 인식 결과를 버릴 수 있다.
반면, 패턴 인식부(130)는 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 인식 결과와 다른 스캔라인의 패턴 인식 결과가 동일한 경우, 다른 스캔라인의 패턴 매칭 오차가 최종 임계치(T1)과 초기 임계치(T2) 사이에 포함되는지를 확인할 수 있다. 이때, 패턴 인식부(130)는 다른 스캔라인의 패턴 매칭 오차가 최종 임계치(T1)보다 작거나 같은 경우, 해당 스캔라인의 패턴 인식 결과를 바코드의 최종 숫자 패턴으로 인식할 수 있으며, 다른 스캔라인의 패턴 매칭 오차가 초기 임계치(T2) 보다 크거나 같은 경우, 해당 스캔라인의 패턴 인식 결과를 버림은 물론이다.
그리고, 패턴 인식부(130)는 다른 스캔라인의 패턴 매칭 오차가 최종 임계치(T1)과 초기 임계치(T2) 사이에 포함되는 경우, 두 스캔라인의 패턴 매칭 오차로부터 최종 패턴 매칭 오차를 산출하고, 최종 패턴 매칭 오차와 최종 임계치(T1)을 비교할 수 있다. 이때, 패턴 인식부(130)는 증분 기울기가 감소하는 형태를 갖는 모든 함수, 일예로, SQRT 함수를 통해 두 스캔라인의 패턴 매칭 오차로부터 최종 패턴 매칭 오차를 산출할 수 있다. 아래의 수학식 4는 정규분포를 따르는 여러 개의 측정오차 값으로부터 최종 오차율을 계산하는 방식으로, 복수의 스캔라인의 패턴 매칭 오차로부터 누적된 최종 패턴 매칭 오차를 산출하는 수학식이다.
Figure 112016082928707-pat00008
수학식 4에서, dtotal(n)은 n개의 스캔라인의 최종 패턴 매칭 오차를 의미하고, dtotal(n-1)은 n-1개의 스캔라인의 누적된 최종 패턴 매칭 오차이고, ds는 n번째 스캔라인의 패턴 매칭 오차이다.
패턴 인식부(130)는 최종 패턴 매칭 오차와 최종 임계치(T1)의 비교 결과, 최종 패턴 매칭 오차가 최종 임계치(T1) 보다 작거나 같은 경우에만 두 스캔라인의 동일한 패턴 인식 결과를 바코드의 최종 숫자 패턴으로 인식할 수 있다. 반면, 패턴 인식부(130)는 최종 패턴 매칭 오차가 최종 임계치(T1) 보다 큰 경우에는 두 스캔라인의 동일한 패턴 인식 결과를 버릴 수 있다.
예를 들면, 패턴 인식부(130)는 1개의 스캔라인의 패턴 매칭 오차가 "5"이고, 다른 스캔라인의 패턴 매칭 오차가 "5"로 산출된 경우, 두 개의 스캔라인의 누적된 최종 패턴 매칭 오차를 SQRT 함수를 이용하여 산출하면 SQRT((25+25)/4)=SQRT(12.5)~3.5로 산출할 수 있다. 이때, 최종 임계치(T1)가 "4"인 경우, 두 스캔라인의 누적된 최종 패턴 매칭 오차가 최종 임계치(T1)보다 작으므로, 두 스캔라인의 동일한 패턴 인식 결과를 바코드의 최종 숫자 패턴으로 인식할 수 있다.
여기에서, 종래의 영상 기반 바코드 인식 알고리즘에 따르면 각 스캔라인의 패턴 매칭 오차는 "5"로 최종 임계치(T1)인 "4" 보다 크므로, 각 스캔라인의 패턴 인식 결과를 버리게 되나, 본 발명의 일 실시예에 따른 바코드 인식 장치(100)는 두 스캔라인의 패턴 매칭 오차로부터 누적된 최종 패턴 매칭 오차와 최종 임계치(T1)를 비교함으로써, 해당 패턴 인식 결과를 바코드의 최종 숫자 패턴으로 인식할 수 있다. 이는 확률이론적으로 두 번 연속 같은 패턴 인식 결과가 산출되고 그 오차가 "5"인 것은 해당 패턴 인식 결과가 실제 바코드의 숫자 패턴일 가능성이 높기 때문이다.
이와 같이, 패턴 인식부(130)는 바코드 영역의 이진화 영상에서 획득하는 스캔라인을 기준으로 숫자 패턴들과의 패턴 매칭을 수행하여 패턴 매칭 오차 및 패턴 인식 결과를 포함하는 패턴 매칭 결과를 산출할 수 있다. 그리고, 패턴 인식부(130)는 패턴 매칭 오차와 미리 정해진 두 개의 임계치와의 비교 결과에 따라 해당 패턴 인식 결과를 바코드의 최종 숫자 패턴으로 인식하고 패턴 인식을 종료하거나, 상술한 바와 같은 알고리즘에 따라 바코드의 최종 숫자 패턴을 인식할 때까지 복수의 스캔라인의 패턴 매칭 결과와 비교할 수 있다.
이하에서는, 도 4 및 도 5를 참조하여 본 발명의 일 실시예에 따른 바코드 인식 방법에 대하여 설명하기로 한다.
도 4 및 도 5는 본 발명의 일 실시예에 따른 바코드 인식 방법을 설명하기 위한 순서도이다.
본 발명의 일 실시예에 따른 바코드 인식 방법은 도 1에 도시된 바코드 인식 장치(100)와 실질적으로 동일한 구성에서 진행될 수 있다. 따라서, 도 1에 도시된 바코드 인식 장치(100)와 동일한 구성요소는 동일한 도면부호를 부여하고, 반복되는 설명은 생략하기로 한다.
도 4를 참조하면, 영상 획득부(110)는 바코드 영역을 포함하는 입력 영상을 획득할 수 있다(400).
전처리부(120)는 입력 영상을 업샘플링 후 이진화하여 바코드 영역의 이진화 영상을 생성할 수 있다(410). 전처리부(120)는 선형보간법을 이용하여 바코드 영역을 포함하는 입력영상을 업샘플링하고 이진화하여 유효 해상도가 확장된 바코드 영역의 이진화 영상을 생성할 수 있다.
패턴 인식부(130)는 바코드 영역의 이진화 영상을 분석하여 바코드의 숫자 패턴을 인식할 수 있다(420).
구체적으로는, 도 5를 참조하면, 패턴 인식부(130)는 바코드 영역의 이진화 영상에서 스캔라인을 획득하고, 획득한 스캔라인을 기준으로 패턴 매칭을 수행하여 패턴 매칭 오차 및 패턴 인식 결과를 산출할 수 있다(500).
그리고, 패턴 인식부(130)는 패턴 매칭 오차가 미리 정해진 최종 임계치(T1)보다 작거나 같은지 확인할 수 있다(510). 패턴 인식부(130)는 패턴 매칭 오차가 미리 정해진 최종 임계치(T1) 보다 작거나 같은 경우, 해당 패턴 인식 결과를 바코드의 최종 숫자 패턴으로 인식할 수 있다(595).
또는, 패턴 인식부(130)는 패턴 매칭 오차가 미리 정해진 최종 임계치(T1)와 초기 임계치(T2) 사이에 포함되는 것으로 확인되면(520), 바코드 영역의 이진화 영상에서 다른 스캔라인을 획득하고, 획득한 스캔라인을 기준으로 패턴 매칭을 수행하여 패턴 매칭 오차 및 패턴 인식 결과를 산출할 수 있다(530).
그리고, 패턴 인식부(130)는 패턴 매칭 오차가 미리 정해진 최종 임계치(T1) 보다 작거나 같은지 확인할 수 있다(540). 패턴 인식부(130)는 패턴 매칭 오차가 미리 정해진 최종 임계치(T1) 보다 작거나 같은 경우, 해당 패턴 인식 결과를 바코드의 최종 숫자 패턴으로 인식할 수 있다(595).
또는, 패턴 인식부(130)는 패턴 매칭 오차가 미리 정해진 최종 임계치(T1)와 초기 임계치(T2) 사이에 포함되는 것으로 확인되면(550), 패턴 인식 결과와 이전의 패턴 인식 결과가 동일한지를 확인할 수 있다(560).
한편, 패턴 인식부(130)는 패턴 매칭 오차가 미리 정해진 초기 임계치(T2) 보다 크거나 같은 것으로 확인되면(550), 해당 패턴 인식 결과를 버리고(590), 다시 바코드 인식을 수행할 수 있다.
패턴 인식부(130)는 패턴 인식 결과와 이전의 패턴 인식 결과가 동일한지를 확인한 결과(560), 패턴 인식 결과와 이전의 패턴 인식 결과가 동일하면, 수학식 4를 이용하여 두 스캔라인의 패턴 매칭 오차로부터 최종 패턴 매칭 오차를 산출할 수 있다(570).
패턴 인식부(130)는 최종 패턴 매칭 오차가 최종 임계치(T1) 보다 작거나 같은지 확인하고(580), 그 결과 최종 패턴 매칭 오차가 최종 임계치(T1) 보다 작거나 같은 것으로 확인되면 두 스캔라인의 동일한 패턴 인식 결과를 바코드의 최종 숫자 패턴으로 인식할 수 있다(595).
한편, 패턴 인식부(130)는 패턴 인식 결과가 이전의 패턴 인식 결과와 다르거나(560), 최종 패턴 매칭 오차가 최종 임계치(T1) 보다 큰 것으로 확인되면 해당 패턴 인식 결과를 버리고(590), 다시 바코드 인식을 수행할 수 있다.
이와 같은, 바코드 인식 방법은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD 와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.
프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드 뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 바코드 인식 장치

Claims (5)

  1. 바코드 영역을 포함하는 입력 영상을 획득하는 영상 획득부;
    상기 입력 영상을 업샘플링 후 이진화하여 상기 바코드 영역의 이진화 영상을 생성하는 전처리부; 및
    상기 바코드 영역의 이진화 영상을 스캔하여 복수의 스캔라인을 획득하고, 상기 복수의 스캔라인에서 각각 연속적인 검정색 영역의 픽셀과 흰색 영역의 픽셀을 계수하여 스캔라인 패턴 값을 산출하고, 상기 스캔라인 패턴 값과 미리 저장된 복수의 숫자 패턴 별 바의 패턴 값을 비교하는 패턴 매칭을 수행하여, 상기 복수의 스캔라인 각각의 패턴 매칭 결과를 산출하고, 상기 복수의 스캔라인 각각의 패턴 매칭 결과를 비교하여 최종적으로 바코드의 숫자 패턴을 인식하는 패턴 인식부를 포함하는 바코드 인식 장치.
  2. 제1항에 있어서,
    상기 패턴 인식부는,
    상기 패턴 매칭을 수행하여 상기 복수의 스캔라인 각각의 패턴 매칭 오차 및 패턴 인식 결과를 포함하는 패턴 매칭 결과를 산출하고, 상기 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차와 미리 정해진 두 개의 임계치를 비교하여 해당 스캔라인의 패턴 인식 결과를 바코드의 숫자 패턴으로 인식할지 여부를 결정하는 바코드 인식 장치.
  3. 제2항에 있어서,
    상기 패턴 인식부는,
    상기 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차와 미리 정해진 두 개의 임계치의 비교 결과, 상기 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차가 상기 두 개의 임계치 중 작은 값인 최종 임계치보다 작거나 같은 경우, 해당 스캔라인의 패턴 인식 결과를 바코드의 숫자 패턴으로 인식하고, 상기 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차가 상기 두 개의 임계치 중 큰 값인 초기 임계치보다 크거나 같은 경우, 해당 스캔라인의 패턴 인식 결과를 버리는 바코드 인식 장치.
  4. 제3항에 있어서,
    상기 패턴 인식부는,
    상기 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차와 미리 정해진 두 개의 임계치의 비교 결과, 상기 복수의 스캔라인 중 어느 하나의 스캔라인의 패턴 매칭 오차가 상기 두 개의 임계치 사이에 포함되는 경우, 해당 스캔라인의 패턴 매칭 오차와, 해당 패턴 인식 결과와 동일한 패턴 인식 결과를 갖는 다른 스캔라인의 패턴 매칭 오차를 조합하여 최종 패턴 매칭 오차를 산출하고, 상기 최종 패턴 매칭 오차와 상기 최종 임계치를 비교하여 상기 동일한 패턴 인식 결과를 바코드의 숫자 패턴으로 인식할지 여부를 결정하는 바코드 인식 장치.
  5. 제1항에 있어서,
    상기 전처리부는,
    상기 입력 영상을 선형보간법을 이용하여 업샘플링하고 이진화하여 상기 바코드 영역의 이진화 영상을 생성하는 바코드 인식 장치.

KR1020160108543A 2016-08-25 2016-08-25 바코드 인식 장치 KR101871379B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160108543A KR101871379B1 (ko) 2016-08-25 2016-08-25 바코드 인식 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160108543A KR101871379B1 (ko) 2016-08-25 2016-08-25 바코드 인식 장치

Publications (2)

Publication Number Publication Date
KR20180023363A KR20180023363A (ko) 2018-03-07
KR101871379B1 true KR101871379B1 (ko) 2018-06-26

Family

ID=61689043

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160108543A KR101871379B1 (ko) 2016-08-25 2016-08-25 바코드 인식 장치

Country Status (1)

Country Link
KR (1) KR101871379B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110414645B (zh) * 2018-04-28 2023-05-30 深圳果力智能科技有限公司 一种基于元素匹配的图案识别方法
CN109325491B (zh) 2018-08-16 2023-01-03 腾讯科技(深圳)有限公司 识别码识别方法、装置、计算机设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100275007B1 (ko) 1992-05-29 2000-12-15 시모야마 도시로 바코드 판독장치
US20140347500A1 (en) * 2013-05-22 2014-11-27 Synchronoss Technologies, Inc. Apparatus and method of document tagging by pattern matching
US20150022829A1 (en) * 2013-07-18 2015-01-22 Ricoh Company, Ltd. Image Scaling Mechanism

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100275007B1 (ko) 1992-05-29 2000-12-15 시모야마 도시로 바코드 판독장치
US20140347500A1 (en) * 2013-05-22 2014-11-27 Synchronoss Technologies, Inc. Apparatus and method of document tagging by pattern matching
US20150022829A1 (en) * 2013-07-18 2015-01-22 Ricoh Company, Ltd. Image Scaling Mechanism

Also Published As

Publication number Publication date
KR20180023363A (ko) 2018-03-07

Similar Documents

Publication Publication Date Title
CN109918987B (zh) 一种视频字幕关键词识别方法及装置
US8611662B2 (en) Text detection using multi-layer connected components with histograms
US8867828B2 (en) Text region detection system and method
US10699091B2 (en) Region of interest location and selective image compression
JP5176763B2 (ja) 低品質文字の識別方法及び装置
KR100903595B1 (ko) 조사 영역 추출 방법 및 화상 처리 장치
KR101782589B1 (ko) 이미지에 포함된 텍스트를 검출하는 방법, 장치 및 컴퓨터 판독 가능한 기록매체
EP2905724A2 (en) Object detection system and method
US9251430B2 (en) Apparatus, method, and program for character recognition using minimum intensity curve of image data
JP6075190B2 (ja) 画像処理方法及び装置
JP4100885B2 (ja) 帳票認識装置、方法、プログラムおよび記憶媒体
KR101130963B1 (ko) 형태와 특징 정보를 이용한 비정형 객체 추적 장치 및 그 방법
US20050058350A1 (en) System and method for object identification
US9798948B2 (en) Optical character recognition localization tool
JP2010231254A (ja) 画像解析装置、画像解析方法およびプログラム
JP2005148987A (ja) オブジェクト識別方法とその装置、プログラム及び記録媒体
KR101871379B1 (ko) 바코드 인식 장치
CN111401308A (zh) 一种基于光流效应的鱼类行为视频识别方法
CN107944352B (zh) 一种基于图片检索方法的车牌识别系统和方法
US8755594B2 (en) Information processing device and method, and program
JP2012037926A (ja) 画像処理装置及び画像処理プログラム
US9659227B2 (en) Detecting object from image data using feature quantities
JP5121685B2 (ja) バーコード読取装置、バーコード読取プログラム、バーコード読取方法
US20030123730A1 (en) Document recognition system and method using vertical line adjacency graphs
Fang et al. Incomplete barcode reading mechanism with remote database access

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