KR100393423B1 - A method for recognizing 2D barcode information - Google Patents

A method for recognizing 2D barcode information Download PDF

Info

Publication number
KR100393423B1
KR100393423B1 KR10-2001-0014729A KR20010014729A KR100393423B1 KR 100393423 B1 KR100393423 B1 KR 100393423B1 KR 20010014729 A KR20010014729 A KR 20010014729A KR 100393423 B1 KR100393423 B1 KR 100393423B1
Authority
KR
South Korea
Prior art keywords
bar
barcode
bars
region
interest
Prior art date
Application number
KR10-2001-0014729A
Other languages
Korean (ko)
Other versions
KR20010044743A (en
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 KR10-2001-0014729A priority Critical patent/KR100393423B1/en
Publication of KR20010044743A publication Critical patent/KR20010044743A/en
Application granted granted Critical
Publication of KR100393423B1 publication Critical patent/KR100393423B1/en

Links

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
    • G06K7/1443Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image
    • 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/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14172D bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1452Methods for optical code recognition including a method step for retrieval of the optical code detecting bar code edges
    • 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/146Methods for optical code recognition the method including quality enhancement steps

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)
  • Printers Characterized By Their Purpose (AREA)

Abstract

본 발명은 특히 스캐너를 구동하는 컴퓨터에 의해 실행 가능한 2차원 바코드 정보 인식방법에 관한 것으로, 영상획득부를 통해 얻어진 영상중에서 바코드가 위치한 부분을 관심영역으로 설정하는 제 1 단계와; 상기 제 1 단계에서 설정된 관심영역내에 위치한 바를 각각 분리하여 추출하는 제 2 단계와; 상기 추출된 각각의 바를 상부에서 출발하는 제 1 그룹의 바와 하부에서 출발하는 제 2 그룹의 바로 식별하고, 각각의 그룹별로 소정의 표준바에 대한 상대적 길이를 산출하는 제 3 단계; 및 상기 제 3 단계에서 산출된 각 바의 그룹과 상대적 길이에 따라 해당 바에 대한 바코드 데이터를 출력하는 제 4 단계를 포함하는 것을 특징으로 한다.The present invention relates to a method for recognizing two-dimensional barcode information executable by a computer for driving a scanner, the method comprising: a first step of setting a region of a barcode in an image obtained through an image acquisition unit as a region of interest; A second step of separating and extracting bars located in the ROI set in the first step; A third step of identifying each of the extracted bars of a bar of a first group starting from the top and a bar of a second group starting from the bottom, and calculating a relative length of a predetermined standard bar for each group; And a fourth step of outputting bar code data for the bar according to the group and the relative length of each bar calculated in the third step.

상기와 같이 본 발명은 0∼9의 크기를 갖는 바를 이용하여 정보를 부호화함에 따라 판독이 용이하고 많은 정보의 표현이 가능하여 웹(Web)상에서 구현되는 모든 인터넷 서비스에 활용할 수 있다.As described above, the present invention is easy to read and expresses a lot of information by encoding information using bars having a size of 0 to 9, and thus can be used for all Internet services implemented on the Web.

Description

2차원 바코드 정보 인식방법 {A method for recognizing 2D barcode information}A method for recognizing 2D barcode information}

본 발명은 바코드(Bar Code) 정보 인식방법에 관한 것으로, 특히 판독이 용이하고 많은 정보의 표현이 가능하여 웹(Web)상에서 구현되는 모든 서비스에 활용할 수 있는 2차원 바코드 정보 인식방법에 관한 것이다.The present invention relates to a method for recognizing a bar code information, and more particularly, to a method for recognizing a two-dimensional bar code information that can be used for all services implemented on a web by being easy to read and expressing a lot of information.

일반적으로, 바코드는 굵거나 가는 바(Black Bar)와 스페이스(White Bar)의 조합을 통해 문자, 숫자, 기호 등을 광학적으로 판독하기 쉽게 부호화한 것인데, 데이터의 입력이 간편하고 데이터의 입력시 에러율이 적으며 자료처리 시스템의 구성이 가능하고 다양한 재질에 인쇄가 가능하다는 장점 등으로 인해 여러 분야에서 폭 넓게 사용되고 있다.In general, a barcode is a code that can be easily read optically by using a combination of thick or black bars and white bars to easily read letters, numbers, and symbols. It is widely used in various fields due to its low number, data processing system, and printing on various materials.

즉, 도 5에 도시된 것처럼 종래의 바코드는 바와 스페이스를 연속적으로 배열하여 특정 문자와 숫자 및 기호를 나타내는데, 이와같이 연속적으로 배열된 바와 스페이스로 이루어진 바코드 심볼은 바코드의 시작과 끝을 나타내는 전후방 여백 (Quiet Zone)을 갖는다.That is, as shown in FIG. 5, a conventional bar code continuously displays bars and spaces to represent specific letters, numbers, and symbols. Bar code symbols consisting of continuously arranged bars and spaces indicate front and rear margins indicating the start and end of the bar code. Quiet Zone.

또한, 상기 심벌은 데이터의 입력방향과 바코드의 종류 및 바코드의 시작과 끝을 알려주는 시작/종료 캐릭터(Start/Stop Character), 정보를 사람의 육안으로 식별 가능하게 표시한 정보라인(Interpretation Line), 및 문자간을 서로 분리시키는 갭(Intercharacter Gap)을 포함한다.In addition, the symbol is a Start / Stop Character that informs the input direction of the data, the type of the barcode, and the start and end of the barcode, and an information line in which the information can be visually identified by the human eye. , And an intercharacter gap that separates the characters from each other.

이와같이 구성된 바코드 정보를 해독하기 위해서는 바코드 심벌에 빛을 조사하고 이 심벌에 의해 반사되는 빛의 량을 검출하면 된다. 즉, 바코드의 검은 막대 부분인 바는 적은 량의 빛을 반사하지만 하얀 막대부분인 스페이스는 많은 량의 빛을 반사한다. 따라서, 바코드에 의해 반사된 빛을 수광하여 전기적인 신호로 변환시키면 컴퓨터가 인식하는 0과 1의 비트로 바코드를 변환시킬 수 있는데, 이를통해 바코드의 판독이 가능하다.In order to decode the bar code information configured as described above, the bar code symbol is irradiated with light and the amount of light reflected by the symbol is detected. In other words, the bar that is the black bar of the barcode reflects a small amount of light, while the space that is the white bar reflects a large amount of light. Therefore, when the light reflected by the barcode is received and converted into an electrical signal, the barcode can be converted into 0 and 1 bits recognized by the computer, and the barcode can be read.

종래의 바코드는 바와 스페이스의 두께차에 의해 0과 1의 비트로 구분됨에 따라 바코드의 고선명도가 요구된다. 그러나, 웹상에서 전송되는 바코드를 프린터로 인쇄하면 그 선명도가 떨어져 판독이 용이하지 않을 뿐만 아니라 많은 정보를 표현할 수 없음에 따라 웹상에서 구현되는 서비스에 그대로 활용하기 어렵다는 문제점을 갖고 있다.As a conventional barcode is divided into 0 and 1 bits by the thickness difference between the bar and the space, a high definition of the barcode is required. However, when a barcode transmitted on the web is printed by a printer, it is difficult to read as well as it is not easy to read and can not express a lot of information.

본 출원인은 이와 같은 문제점을 해결하기 위하여 2000. 12. 1. 자로 특허출원 제2000-72458호를 출원한 바 있다. 이 발명은 바코드 스캐너 혹은 이와 연결된 컴퓨터 상에서 구현된 바코드 정보 인식방법에 관한 것으로, 이 바코드는 바의 폭과 바 간의 거리에 기초해 정보를 인식하는 종래 방식과는 달리, 도1a 에 도시된 바와 같이 바의 높이에 기초해 정보를 인식하는 것을 특징으로 한다. 구체적으로, 이 방법은 : 영상획득부를 통해 얻어진 영상중에서 바코드가 위치한 부분을 관심영역으로 설정하는 제 1 단계와; 상기 제 1 단계에서 설정된 관심영역내에 위치한 바(Black Bar)를 각각 분리하여 추출하는 제 2 단계와; 상기 제 2 단계에서 추출된 바중 소정의 표본바와 나머지 바의 높이를 서로 비교하여 각 바의 상대적크기(Value)를 산출하는 제 3 단계; 및 상기 제 3 단계에서 산출된 각 바의 상대적 크기에 따라 해당 바를 코드화한 후, 얻어진 전체 바코드 데이터를 출력하는 제 4 단계를 구비하는 것을 특징으로 한다.The present applicant has filed a patent application No. 2000-72458 in order to solve such a problem. The present invention relates to a barcode information recognition method implemented on a barcode scanner or a computer connected thereto. Unlike the conventional method of recognizing information based on a bar width and a distance between bars, as shown in FIG. Recognize information based on the height of the bar. Specifically, the method comprises: a first step of setting, as a region of interest, a portion in which an barcode is located among images obtained through the image acquisition unit; A second step of separating and extracting black bars located in the ROI set in the first step; A third step of calculating a relative value of each bar by comparing the heights of the sample bars and the remaining bars among the bars extracted in the second step with each other; And a fourth step of encoding the bar according to the relative size of each bar calculated in the third step, and then outputting the obtained bar code data.

그러나 이와 같은 높이에 기초한 코드화에 부가하여 좀 더 컴팩트하고 판독성이 높은 바코드의 판독방법에 대한 필요성은 여전히 존재한다. 본 발명은 이와 같은 필요성을 만족시키기 위하여 도출된 것으로, 인쇄품질이 낮은 프린트로 출력해도 판독성이 좀 더 높고, 더 컴팩트한 컴퓨터에서 구현된 바코드 판독 방법을 제공하는 것을 목적으로 한다.However, there is still a need for a more compact and highly readable barcode reading method in addition to such height based coding. The present invention has been made to satisfy such a need, and an object of the present invention is to provide a barcode reading method implemented in a computer which is more readable and more compact even when outputting a print having low print quality.

도 1a는 본 발명의 선출원에 따른 2차원 바코드를 나타낸 도면,Figure 1a is a view showing a two-dimensional bar code according to the present application of the present invention,

도 1b는 본 발명의 일 실시예가 적용되는 2차원 바코드의 체계를 나타낸 도면,Figure 1b is a diagram showing a system of two-dimensional barcode to which an embodiment of the present invention is applied,

도 1c는 본 발명의 상기 실시예가 적용되는 2차원 바코드의 일예를 나타낸 도면,Figure 1c is a view showing an example of a two-dimensional barcode to which the embodiment of the present invention is applied,

도1d는 본 발명의 또다른 실시예가 적용되는 2차원 바코드의 일예를 나타낸 도면,Figure 1d is a view showing an example of a two-dimensional barcode to which another embodiment of the present invention is applied,

도 2는 본 발명에 따른 2차원 바코드의 판독장치를 개략적으로 나타낸Figure 2 schematically shows an apparatus for reading a two-dimensional bar code according to the present invention

블럭도,Block Diagram,

도 3은 본 발명에 따른 2차원 바코드 정보 인식방법을 나타낸 흐름도,3 is a flowchart illustrating a method of recognizing two-dimensional barcode information according to the present invention;

도 4a 내지 4b는 바코드의 비틀림(Skew) 허용오차를 설명하기 위한 도면,4A to 4B are diagrams for explaining a skew tolerance of a barcode;

도 5는 일반적인 바코드를 나타낸 도면.5 shows a general barcode.

도면의 주요부분에 대한 부호의 설명Explanation of symbols for main parts of the drawings

10 : 영상획득부10: image acquisition unit

20 : A/D 변환기20: A / D converter

30 : 영상처리부30: image processing unit

상기 목적을 달성하기 위한 본 발명의 일 양상이 적용되는 바코드 체계는 도1b에 도시된 바와 같이 바의 길이에 기초하여 바코드를 판독하되, 기준위치가 상부 혹은 하부에서 출발하는 2 종류로 구별하여 인식하도록 구성된다. 구체적으로 본 발명에 따른 스캐너를 구동하는 컴퓨터에 의해 실행 가능한 바코드 정보 인식방법은: 영상획득부를 통해 얻어진 영상중에서 바코드가 위치한 부분을 관심영역으로 설정하는 제 1 단계와; 상기 제 1 단계에서 설정된 관심영역내에 위치한 바를 각각 분리하여 추출하는 제 2 단계와; 상기 추출된 각각의 바를 상부에서 출발하는 제 1 그룹의 바와 하부에서 출발하는 제 2 그룹의 바로 식별하고, 각각의 그룹별로 소정의 표준바에 대한 상대적 길이를 산출하는 제 3 단계; 및 상기 제 3 단계에서 산출된 각 바의 그룹과 상대적 길이에 따라 해당 바에 대한 바코드 데이터를 출력하는제 4 단계를 포함하는 것을 특징으로 한다.In order to achieve the above object, a bar code system to which one aspect of the present invention is applied reads a bar code based on the length of a bar as shown in FIG. 1B, but distinguishes two types of reference positions starting from the top or the bottom. It is configured to. Specifically, a method for recognizing barcode information executable by a computer driving a scanner according to the present invention includes: a first step of setting a region where a barcode is located in an image acquired through an image acquisition unit as a region of interest; A second step of separating and extracting bars located in the ROI set in the first step; A third step of identifying each of the extracted bars of a bar of a first group starting from the top and a bar of a second group starting from the bottom, and calculating a relative length of a predetermined standard bar for each group; And a fourth step of outputting bar code data for the bar according to the group and the relative length of each bar calculated in the third step.

본 발명의 또다른 양상에 따른 바코드 체계는 도1d에 도시된 바와 같이 이들 바가 연접하여 도시될 수 있음을 특징으로 한다. 이러한 양상에 따른 바코드 정보 인식방법에 따르면, 상기 제 1 양상에서의 제2단계가 : 바의 기준 폭을 추정하고 이로부터 연접한 바들을 분리하여 추출하는 것을 특징으로 한다.Bar code schemes according to another aspect of the invention are characterized in that these bars can be shown in contiguous fashion as shown in FIG. According to the barcode information recognizing method according to this aspect, the second step in the first aspect is characterized in: estimating the reference width of the bar and separating and extracting the contiguous bars therefrom.

이하에서는 첨부된 도면을 참조하여 기술되는 바람직한 실시예를 통하여 본 발명을 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 설명하기로 한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily understand and reproduce the present invention.

도 1a는 선행출원에 따른 2차원 바코드를 나타낸 도면으로, 웹(Web)상에서 구현되는 모든 인터넷 서비스에 활용할 수 있도록 판독이 용이하고 많은 정보의 표현이 가능한 0∼9의 크기(Value)를 갖는 2차원 바코드를 나타낸 도면이다. 본 발명은 이와 같은 선행 출원을 개량한 것이다.Figure 1a is a view showing a two-dimensional bar code according to the prior application, it is easy to read and can be used for all the Internet services implemented on the Web (Web) has a value of 0-9 that can represent a lot of information (Value) A diagram showing a dimensional barcode. The present invention is an improvement on this prior application.

상기 바코드는 전방여백(Quiet Zone), 시작바(Start Bar), 제1 제어코드필드 (CCFⅠ: Control Code Field Ⅰ), 제2 제어코드필드(CCFⅡ: Control Code Field Ⅱ), 정보필드(Information Field), 에러수정코드(ECC: Error Correction Code), 종료바(Stop Bar)와 후방여백(Quiet Zone)의 순으로 구성되어 있다.The barcode includes a front zone, a start bar, a first control code field (CCFI), a second control code field (CCFII) and an information field. ), Error Correction Code (ECC), Stop Bar and Quiet Zone.

상기 전후방 여백(Quiet Zone)은 바와 스페이스로 이루어진 2차원 바코드 심볼의 시작과 끝을 나타내고, 시작바(Stat Bar)와 종료바(Stop Bar)는 바코드의 시작과 끝을 알린다. 또한, 제1 및 제2 제어코드필드(CCFⅠ,CCFⅡ)에는 바코드의 엔코딩 방법이 표시된다. 즉, 프리 포맷 필드인 정보필드(Information Field)에는 임의의 엔코딩 테이블을 이용하여 코딩된 정보가 표시되는데, 상기 제1 및 제2 제어코드필드(CCFⅠ,CCFⅡ)에는 이와같은 정보의 엔코딩 방법이 표시된다.The front and rear margins (Quiet Zone) indicate the start and end of the two-dimensional bar code symbol consisting of a bar and space, the Start Bar (Stat Bar) and the End Bar (Stop Bar) indicates the start and end of the barcode. In addition, the first and second control code fields CCFI and CCFII display the encoding method of the barcode. That is, information coded using an arbitrary encoding table is displayed in an information field, which is a pre-format field, and the encoding method of such information is displayed in the first and second control code fields CCF I and CCF II. do.

즉, 상기 정보필드에 표시되는 정보는 다음의 [표1]과 같은 문자 엔코딩 테이블(C Encoding Table)을 이용하여 코딩되며, 상기 제1 및 제2 제어코드필드(CCFⅠ,CCFⅡ)에 표시되는 정보는 다음의 [표2]와 같은 숫자 엔코딩 테이블(N Encoding Table)을 이용하여 코딩된다.That is, the information displayed in the information field is coded using a character encoding table (C Encoding Table) as shown in the following [Table 1], and the information displayed in the first and second control code fields CCF I and CCF II. Is coded using a N encoding table as shown in Table 2 below.

[표1] 문자 엔코딩 테이블(C Encoding Table)[Table 1] C Encoding Table

ValueValue AlphaAlpha LowerLower MixedMixed PunctuationPunctuation AsciiAscii CharChar AsciiAscii CharChar AsciiAscii CharChar AcsiiAcsii CharChar 00 6565 AA 9797 aa 4848 00 5959 ;; 1One 6666 BB 9898 bb 4949 1One 6060 << 22 6767 CC 9999 cc 5050 22 6262 33 6868 DD 100100 dd 5151 33 6464 @@ 44 6969 EE 101101 ee 5252 44 9191 [[ 55 7070 FF 102102 ff 5353 55 9292 66 7171 GG 103103 gg 5454 66 9393 ]] 77 7272 HH 104104 hh 5555 77 9595 -- 88 7373 II 105105 ii 5656 88 9696 '' 99 7474 JJ 106106 jj 5757 99 126126 ,, 1010 7575 KK 107107 kk 3838 3333 !! 1111 7676 LL 108108 ll 1313 CRCR 1313 CRCR 1212 7777 MM 109109 mm 0909 HTHT 0909 HTHT 1313 7878 NN 110110 nn 4444 ,, 4444 ,, 1414 7979 OO 111111 oo 5858 :: 5858 :: 1515 8080 PP 112112 pp 3535 ## 1010 LFLF 1616 8181 QQ 113113 qq 4545 -- 4545 -- 1717 8282 RR 114114 rr 4646 .. 4646 .. 1818 8383 SS 115115 ss 3636 $$ 3636 $$ 1919 8484 TT 116116 tt 4747 /Of 4747 /Of 2020 8585 UU 117117 uu 4343 ++ 3434 ** 2121 8686 VV 118118 vv 3737 %% 124124 || 2222 8787 WW 119119 ww 4242 ** 4242 ** 2323 8888 XX 120120 xx 6161 == 4040 (( 2424 8989 YY 121121 yy 9494 ^^ 4141 )) 2525 9090 ZZ 122122 zz P1P1 6363 ?? 2626 3232 SPSP 3232 SPSP 3232 SPSP 123123 {{ 2727 L1L1 AsAs L1L1 125125 }} 2828 M1M1 M1M1 A1A1 3939 '' 2929 PsPs PsPs PsPs A1A1

[표2] 숫자 엔코딩 테이블(N Encoding Table)[Table 2] N Encoding Table

NumberNumber Bar ValueBar value 00 0000 1One 0101 22 1010 33 1111 44 2020 55 2121 66 2222 77 2323 88 3030 99 3131

아울러 에러수정코드(ECC)는 2개의 오류검출 및 복원코드를 포함하는데, 하나는 삭제오류(Erasure Error) 또는 판독거부오류(Rejection Error)이고 다른 하나는 대치오류(Substitution Error)이다. 상기 삭제오류는 심볼이 빠져 있거나 스캐닝할 수 없거나 해독할 수 없는 상태를 나타내고 대치오류는 심볼의 위치는 알고 있으나 그 값을 판독할 수 없는 상태를 각각 나타낸다.In addition, the error correction code (ECC) includes two error detection and recovery codes, one of which is an erasure error or a rejection error, and the other is a substitution error. The deletion error indicates a state in which a symbol is missing, cannot be scanned or deciphered, and the replacement error indicates a state in which a symbol is known but its value cannot be read.

한편, 상기와 같이 0∼9의 값을 갖는 크기가 다른 다수의 바(Bar)로 이루어진 2차원 바코드는 도 1에 도시된 것처럼 하나의 열로 사용될 수 있으며, 또한 보다 많은 정보의 표현을 위해 두개 이상의 열로 사용될 수 있다. 이와같이 2차원 바코드가 다층으로 사용되는 경우에는 각 열을 분리형 바를 이용하여 구분하고 각 열의 종료바(Stop Bar)의 앞에 열지시 바를 두는 것이 바람직하다.On the other hand, a two-dimensional bar code consisting of a plurality of bars (bar) having a different size having a value of 0 to 9 as described above can be used in one column, as shown in Figure 1, and also two or more for the representation of more information Can be used as a heat. When two-dimensional barcodes are used in this manner, it is preferable to separate each column by using a separate bar and to place a column indicator bar in front of the stop bar of each column.

도1b는 본 발명의 일 실시예에 따른 바코드 체계를 도시한다. 전방여백(Quiet Zone), 시작바(Start Bar), 제1 제어코드필드 (CCFⅠ: Control Code Field Ⅰ), 제2 제어코드필드(CCFⅡ: Control Code Field Ⅱ), 정보필드(Information Field), 에러수정코드(ECC: Error Correction Code), 종료바(Stop Bar)와 후방여백(Quiet Zone) 등의 필드에 대해서는 도1a 의 선행출원과 동일한 순서로 할당된다. 본 실시예는 선행출원과 비교하여 바의 길이에 따라 상이한 코드로 인식한다는 점은 동일하나 바를 하부에서 출발하는 그룹(01,2,3,4,5)과 상부에서 출발하는 그룹(6,7,8,9)의 2 개의 그룹으로 나누고 있는 점이 차이가 있다. 도1c는 상기 실시예에 따라 일예로 인쇄된 바코드 패턴을 예시한다. 도시된 바로부터 알 수 있듯이 이 바코드는 전체적으로 균형된 형태를 갖고 있으며, 바의 출발점을 달리함으로써 같은 폭의 바코드를 가정할 때 선행출원에 비해 인식이 좀 더 용이하다.1B illustrates a barcode system in accordance with one embodiment of the present invention. Quiet Zone, Start Bar, Control Code Field I (CCFⅠ), Control Code Field II (CCF II), Information Field, Error Fields such as Error Correction Code (ECC), Stop Bar and Quiet Zone are assigned in the same order as the preceding application of FIG. 1A. The present embodiment is identical in that it is recognized as a different code according to the length of the bar compared to the preceding application, but the bar (01, 2, 3, 4, 5) starting from the bottom and the group (6, 7) starting from the top The difference is divided into two groups, (8,9). 1C illustrates a barcode pattern printed as an example according to the above embodiment. As can be seen from the figure, the bar code has a balanced shape as a whole, and by recognizing the bar code of the same width by different bar starting point, it is easier to recognize than the previous application.

도1d는 본 발명의 또다른 실시예에 따른 바코드 체계를 도시한다. 이 실시예에 있어서도 전방여백(Quiet Zone), 시작바(Start Bar), 제1 제어코드필드 (CCFⅠ: Control Code Field Ⅰ), 제2 제어코드필드(CCFⅡ: Control Code Field Ⅱ), 정보필드(Information Field), 에러수정코드(ECC: Error Correction Code), 종료바(Stop Bar)와 후방여백(Quiet Zone) 등의 필드에 대해서는 도1a 의 선행출원과 동일한 순서로 할당된다. 단지 이 실시예에서는 도1c에 도시된 실시예에서 바들을 연접시킨 점이 다르다. 이에 의해 좀 더 데이터 밀도가 높은 바코드가 가능해진다.1D illustrates a barcode scheme in accordance with another embodiment of the present invention. Also in this embodiment, the Quiet Zone, Start Bar, First Control Code Field (CCFI), Second Control Code Field (CCFII), and Information Field ( Fields such as Information Field (ECC), Error Correction Code (ECC), Stop Bar and Quiet Zone are assigned in the same order as the preceding application of FIG. 1A. In this embodiment only, the bar is connected in the embodiment shown in Fig. 1c. This enables a barcode with a higher data density.

다음에는 상기와 같이 구성된 2차원 바코드의 정보를 인식하기 위한 방법을 도 2 내지 도 4를 참조하여 상세히 설명한다.Next, a method for recognizing information of the two-dimensional barcode configured as described above will be described in detail with reference to FIGS. 2 to 4.

도 2는 도 1에 도시된 2차원 바코드의 판독장치를 개략적으로 나타낸 블럭도이고, 도 3은 본 발명에 따른 2차원 바코드 정보 인식방법을 나타낸 흐름도이며, 도 4a 내지 4b는 바코드의 비틀림(Skew) 허용오차를 설명하기 위한 도면이다.2 is a block diagram schematically showing the apparatus for reading a two-dimensional bar code shown in FIG. 1, FIG. ) To illustrate tolerances.

도면에 도시된 것처럼, CCD(Charge Coupled Device) 카메라와 같은 영상획득부(10)를 통해 바코드를 포함하는 임의의 영상이 획득되면 이 영상신호는 A/D 변환기(20)에 의해 디지탈 신호로 변환되어 영상처리부(30)로 인가된다. 이와같이 영상신호가 인가되면 상기 영상처리부(30)는 획득된 영상중 바코드가 위치한 부분을 관심영역으로 설정하게 된다(ST110).As shown in the figure, when an arbitrary image including a barcode is obtained through an image acquisition unit 10 such as a CCD (Charge Coupled Device) camera, the image signal is converted into a digital signal by the A / D converter 20. And is applied to the image processor 30. When the image signal is applied in this way, the image processor 30 sets the region where the barcode is located in the acquired image as the ROI (ST110).

상기와 같이 관심영역이 설정되면 영상처리부(30)는 설정된 영역내에 위치한 각 픽셀의 명도값이 임계값(Threshold) 보다 작으면 0으로 크면 1로 만드는 이진화 과정을 통해 설정된 관심영역내의 영상을 이진영상(binary image)으로 변환시키는데, 이때 임계값은 공지된 바와 같이 히스토그램(Histogram)을 이용하여 선택한다(ST120).When the region of interest is set as described above, the image processor 30 binarizes the image in the region of interest set through a binarization process, in which the brightness value of each pixel located within the set region is less than the threshold value, and becomes 1 when the value is greater than 0. The threshold value is selected using a histogram as is known (ST120).

설정된 관심영역내의 영상이 이진화되면 상기 영상처리부(30)는 LPF(Low Pass Filer) 또는 메디안 필터(Median Filter) 등을 이용한 필터링을 통해 관심영역내에 존재하는 잡영을 제거하고(ST130), 아울러 프린트시 발생된 바코드의 비틀림(Skew)을 보정한다(ST140). 이와같은 비틀림(Skew) 보정은 화상인식분야에서 이미 공지된 여러가지 알로리즘을 선택적으로 채택하여 수행할 수 있다.When the image in the region of interest is binarized, the image processor 30 removes the blemishes existing in the region of interest through filtering using a low pass filer (LPF) or a median filter (ST130), and at the time of printing. The skew of the generated barcode is corrected (ST140). Such skew correction can be performed by selectively adopting various algorithms already known in the field of image recognition.

본 실시예에서는 도 4a에 도시된 것처럼 바코드 전체가 비틀어지는 코드 스큐(Code Skew)는 수평선을 기준으로 ± 5°까지 판독할 수 있도록 구성하고, 개별 바(Bar)들이 바코드의 중심선을 기준으로 비틀어지는 바 스큐(Bar Skew)도 수직선을 기준으로 ± 5°까지 판독할 수 있도록 구성한다.In the present embodiment, as shown in FIG. 4A, a code skew in which the entire barcode is twisted is configured to be read to ± 5 ° based on a horizontal line, and individual bars are twisted based on the center line of the barcode. The bar skew is also configured to read ± 5 ° from the vertical line.

한편, 상기와 같이 프린트시 발생된 바코드의 비틀림이 보정되면 영상처리부 (30)는 설정된 관심영역내에 위치한 바(Black Bar)를 분리하여 추출하게 된다(ST150). 즉, 이진영상중에서 "1"의 값을 갖는 부분은 바(Black Bar)가 위치하는 부분이고 "0"의 값을 갖는 부분은 스페이스(White Bar)가 위치하는 부분으로, 바 (Black Bar) 영상의 화소값의 분포와 방향을 고려하여 관심영역내에 위치한 바를 분리하여 추출하게 된다.On the other hand, when the distortion of the barcode generated during printing as described above is corrected, the image processing unit 30 separates and extracts the bar (Black Bar) located in the set region of interest (ST150). That is, the portion of the binary image having a value of "1" is a portion where a black bar is located and the portion having a value of "0" is a portion where a white bar is located. The bar located in the region of interest is separated and extracted in consideration of the distribution and the direction of the pixel value.

이와 같은 바의 분리 작업(S150)에 있어서, 도1d에 도시된 바와 같은 연접한 바를 분리하는 경우에는 각 바의 폭을 추가로 고려하여야 한다. 바의 폭은 바 패턴의 모서리의 요철 패턴을 분석하거나 혹은 시작 바의 폭을 항상 검출 가능한 상태로 인쇄하여 그 바의 폭을 검출하므로써 용이하게 검출할 수 있다. 바의 폭이 검출되면 이를 기준으로 나머지 연접한 바들 각각을 분리하게 된다. 이때 기준 바 폭에 부가하여 바 패턴 모서리의 요철을 추가로 고려하여 바 분리 작업이 진행됨에 따라 바 폭을 보정하여 바 분리 작업의 정확도를 높일 수 있다.In the separation operation (S150) of such a bar, in the case of separating the adjacent bar as shown in Figure 1d, the width of each bar should be further considered. The width of the bar can be easily detected by analyzing the uneven pattern of the corners of the bar pattern or by printing the width of the starting bar in a detectable state at all times and detecting the width of the bar. When the width of the bar is detected, each of the remaining connected bars is separated based on this. In this case, in addition to the reference bar width, the bar separation operation is performed by further considering the irregularities of the bar pattern edges, thereby increasing the accuracy of the bar separation operation by correcting the bar width.

상기와 같이 관심영역내에 위치한 바(Bar)가 추출되면 영상처리부(30)는 각 바(Bar)의 크기(Value)를 산출하기 위해 기준이되는 표본바를 추출하는데(ST160), 통상적으로 두개의 시작바(Start Bar)중 첫번째 바(Bar)가 "9"의 크기(Value)를 가짐에 따라 상기 시작바를 표본바로 추출하면 된다.When the bar located in the region of interest is extracted as described above, the image processor 30 extracts a sample bar as a reference to calculate the value of each bar (ST160). As the first bar of the Start Bar has a value of "9", the start bar may be extracted as a sample bar.

한편, 이 표본바의 시작 위치와 끝 위치를 기준으로 분리된 바들의 시작위치를 검출한다. 바의 사작 위치를 파악하여 상부에서 시작하는 제 1 그룹의 바와, 하부에서 시작하는 제 2 그룹의 바로 나누게 된다.On the other hand, the start position of the separated bars based on the start position and the end position of the sample bar is detected. The location of the bar is determined so that the bar of the first group starting at the top and the bar of the second group starting at the bottom are divided.

이후에 추출된 표본바와 나머지 바(Bar)의 높이를 서로 비교하여 영상처리부(30)는 표본바에 대한 각 바(Bar)의 상대적인 크기(Value)를산출하고(ST170), 이 상대적인 크기와 그룹의 종류에 따라 도1b에 도시된 바와 같이 코드를 할당하게 된다(ST180).Thereafter, by comparing the heights of the sample bars and the rest of the bars, the image processor 30 calculates a relative value of each bar relative to the sample bar (ST170), and calculates the relative size and According to the type, a code is allocated as shown in FIG. 1B (ST180).

바의 길이와 시작위치를 검출하는 것은 바의 이진 데이터가 저장된 메모리 배열의 주소를 계산하는 등의 공지된 방법으로 용이하게 할 수 있다.Detecting the length and starting position of the bar can be facilitated by known methods such as calculating the address of the memory array in which the bar's binary data is stored.

상기와 같이 코드화된 2차원 바코드 데이터에는 에러수정코드(ECC)가 포함되어 있는데, 영상처리부(30)는 이 에러수정코드를 이용하여 바코드의 전송시 발생된 잡음등으로 인한 오류의 발생여부를 검사하고(ST190), 오류가 발견되지 않으면 코드화된 2차원 바코드 데이터를 연계시스템, 예를들어 POS(Point of sales) 시스템등으로 출력하여 활용하게 된다.The two-dimensional barcode data encoded as described above includes an error correction code (ECC), and the image processing unit 30 checks whether an error occurs due to noise generated when the barcode is transmitted using the error correction code. If no error is found (ST190), the coded two-dimensional bar code data is output to a linkage system, for example, a point of sales (POS) system, and the like.

상기와 같이 본 발명은 0∼9의 크기를 갖는 길이차를 갖는 바를 이용하여 정보를 부호화함에 따라 판독이 용이하고 많은 정보의 표현이 가능하여 웹(Web)상에서 구현되는 많은 인터넷 서비스에 활용할 수 있다. 추가로 본 발명의 제 1 실시예에 따르면 작은 크기의 바코드 패턴으로도 디코딩의 정확도를 높일 수 있으며, 제 2 실시예에 따르면 바의 데이터 밀도를 더욱 높일 수 있다.As described above, the present invention is easy to read and expresses a lot of information by encoding information using a bar having a length difference of 0 to 9, and thus can be used for many Internet services implemented on the Web. . In addition, according to the first embodiment of the present invention, it is possible to increase the accuracy of decoding even with a small barcode pattern, and according to the second embodiment, it is possible to further increase the data density of the bar.

본 발명은 도면에 도시된 일실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 당해 기술분야에 통상의 지식을 지닌 자라면 이로부터 다양한 변형 및 균등한 타실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위에 의해서만 정해져야 할 것이다.Although the present invention has been described with reference to one embodiment shown in the drawings, this is merely exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical protection scope of the present invention should be defined only by the appended claims.

Claims (5)

스캐너를 구동하는 컴퓨터에 의해 실행 가능한 바코드 정보 인식방법에 있어서:In a method of recognizing barcode information executable by a computer running a scanner: 영상획득부를 통해 얻어진 영상중에서 바코드가 위치한 부분을 관심영역으로 설정하는 제 1 단계와;A first step of setting, as a region of interest, a portion where a bar code is located among images obtained through the image acquisition unit; 설정된 관심영역내의 영상을 이진화하고 필터링을 통해 해당 관심영역내에 존재하는 잡영을 제거한후 관심영역내에 위치한 바를 각각 분리하여 추출하는 제 2 단계와;A second step of binarizing the image in the region of interest and removing the buzz present in the region of interest through filtering and separating and extracting the bars located in the region of interest; 상기 추출된 각각의 바를 상부에서 출발하는 제 1 그룹의 바와 하부에서 출발하는 제 2 그룹의 바로 식별하고, 각각의 그룹별로 소정의 표준바에 대한 상대적 길이를 산출하는 제 3 단계; 및A third step of identifying each of the extracted bars of a bar of a first group starting from the top and a bar of a second group starting from the bottom, and calculating a relative length of a predetermined standard bar for each group; And 상기 제 3 단계에서 산출된 각 바의 그룹과 상대적 길이에 따라 해당 바에 대한 바코드 데이터를 출력하는 제 4 단계를 포함하는 것을 특징으로 하는 컴퓨터에서 실행 가능한 2차원 바코드 정보 인식 방법.And a fourth step of outputting bar code data for the bar according to the group and relative length of each bar calculated in the third step. 청구항 1에 있어서, 상기 제2단계가 :The method of claim 1, wherein the second step is: 바의 기준 폭을 추정하고 이로부터 연접한 바들을 분리하여 추출하는 것을 특징으로 하는 컴퓨터에서 실행 가능한 2차원 바코드 정보 인식 방법.A computer-implemented two-dimensional barcode information recognition method comprising estimating a reference width of a bar and separating and extracting adjacent bars from the bar. 삭제delete 청구항 1 또는 2 중의 어느 한 항에 있어서, 상기 2차원 바코드 정보 인식방법은:The method according to claim 1 or 2, wherein the two-dimensional barcode information recognition method is: 프린트시 발생된 바코드의 비틀림(Skew)이 허용오차내에 존재하면 이를 보정한 후, 표본바를 이용하여 각 바의 상대적 크기를 산출하는 것을 특징으로 하는 2차원 바코드 정보 인식방법.If the skew of the barcode generated at the time of printing exists within the tolerance, after correcting it, the two-dimensional barcode information recognition method characterized by calculating the relative size of each bar using a sample bar. 청구항 1 또는 2 중의 어느 한 항에 있어서, 상기 2차원 바코드 정보 인식방법은:The method according to claim 1 or 2, wherein the two-dimensional barcode information recognition method is: 각 바의 코드화를 통해 얻어진 바코드 데이터에 포함된 에러수정코드를 이용하여 판독된 바코드의 에러여부를 검사하는 단계를 더 포함하는 것을 특징으로 하는 2차원 바코드 정보 인식방법.And checking whether the barcode has been read using the error correction code included in the barcode data obtained through the encoding of each bar.
KR10-2001-0014729A 2001-03-21 2001-03-21 A method for recognizing 2D barcode information KR100393423B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0014729A KR100393423B1 (en) 2001-03-21 2001-03-21 A method for recognizing 2D barcode information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0014729A KR100393423B1 (en) 2001-03-21 2001-03-21 A method for recognizing 2D barcode information

Publications (2)

Publication Number Publication Date
KR20010044743A KR20010044743A (en) 2001-06-05
KR100393423B1 true KR100393423B1 (en) 2003-08-02

Family

ID=19707217

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0014729A KR100393423B1 (en) 2001-03-21 2001-03-21 A method for recognizing 2D barcode information

Country Status (1)

Country Link
KR (1) KR100393423B1 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004055713A1 (en) 2002-12-17 2004-07-01 Sharp Kabushiki Kaisha Barcode recognition apparatus
KR100791705B1 (en) * 2005-06-16 2008-01-03 샤프 가부시키가이샤 Barcode recognition apparatus
KR100791704B1 (en) * 2007-10-16 2008-01-07 샤프 가부시키가이샤 Barcode recognition apparatus
US8172145B2 (en) 2007-11-20 2012-05-08 Datalogic ADC, Inc. Enhanced virtual scan line processing
US8459556B2 (en) 2009-01-09 2013-06-11 Datalogic ADC, Inc. Prioritized virtual scan line processing
CN101916357A (en) * 2010-09-03 2010-12-15 西安富立叶微电子有限责任公司 Laser barcode reading device and barcode reading method
WO2014031107A1 (en) * 2012-08-21 2014-02-27 Empire Technology Development Llc Orthogonal encoding for tags
CN103871027A (en) * 2012-12-12 2014-06-18 腾讯科技(深圳)有限公司 Optimization processing method of QR code images and mobile terminal
CN109849105A (en) * 2018-11-16 2019-06-07 惠科股份有限公司 Chip on film punching device, display device assembling equipment and assembling system thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231298A (en) * 1996-02-22 1997-09-05 Olympus Optical Co Ltd Recording medium bearing bar code and bar code reading method
JPH09265508A (en) * 1996-03-29 1997-10-07 Nec Corp Reading method for two-dimensional bar code
JP2001014418A (en) * 1999-05-25 2001-01-19 Matsushita Electric Ind Co Ltd Two-dimensional bar code reading method
KR20010016304A (en) * 2000-12-01 2001-03-05 김지영 A method for recognizing 2D bar code information

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231298A (en) * 1996-02-22 1997-09-05 Olympus Optical Co Ltd Recording medium bearing bar code and bar code reading method
JPH09265508A (en) * 1996-03-29 1997-10-07 Nec Corp Reading method for two-dimensional bar code
JP2001014418A (en) * 1999-05-25 2001-01-19 Matsushita Electric Ind Co Ltd Two-dimensional bar code reading method
KR20010016304A (en) * 2000-12-01 2001-03-05 김지영 A method for recognizing 2D bar code information

Also Published As

Publication number Publication date
KR20010044743A (en) 2001-06-05

Similar Documents

Publication Publication Date Title
US6371373B1 (en) Method for reading a two-dimensional barcode
EP0660275B1 (en) Document copying deterrent method
JP5214330B2 (en) Image processing apparatus, barcode processing apparatus, and image processing method
JP5591578B2 (en) Character string recognition apparatus and character string recognition method
US4748317A (en) Optical reader
US8306325B2 (en) Text character identification system and method thereof
JP2006092346A (en) Equipment, method, and program for character recognition
JPS6077279A (en) Initiation of character image
JP4202101B2 (en) Barcode recognition method and recognition decoding processing apparatus
KR100401778B1 (en) Method of reading barcode and barcode reading system
US10936837B1 (en) 2D barcode overlays
KR100393423B1 (en) A method for recognizing 2D barcode information
CN109740403A (en) A kind of method and apparatus for distinguishing bar code
US20060177093A1 (en) Sheet identifying device and method
JP5630689B2 (en) Character recognition method and character recognition device
KR890002473B1 (en) Character discirminating method
KR100341601B1 (en) A method for recognizing 2D bar code information
JP2005208843A (en) Information encoding/decoding method, device and code indicator
JP2008021009A (en) Bar code recognition device, method and program
JPH0291789A (en) Character recognizing system
JP3022459B2 (en) Form identification registration device
JP5470734B2 (en) Image processing apparatus and image processing program
JP4832996B2 (en) Information detection device
Chin et al. A microprocessor-based optical character recognition check reader
JP2019153167A (en) Code reading device and program

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee