KR100495874B1 - 문서 부호화 및 복원 방법 - Google Patents

문서 부호화 및 복원 방법 Download PDF

Info

Publication number
KR100495874B1
KR100495874B1 KR10-2002-0084065A KR20020084065A KR100495874B1 KR 100495874 B1 KR100495874 B1 KR 100495874B1 KR 20020084065 A KR20020084065 A KR 20020084065A KR 100495874 B1 KR100495874 B1 KR 100495874B1
Authority
KR
South Korea
Prior art keywords
string
numbers
character
document
error
Prior art date
Application number
KR10-2002-0084065A
Other languages
English (en)
Other versions
KR20040057355A (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 KR10-2002-0084065A priority Critical patent/KR100495874B1/ko
Publication of KR20040057355A publication Critical patent/KR20040057355A/ko
Application granted granted Critical
Publication of KR100495874B1 publication Critical patent/KR100495874B1/ko

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Character Discrimination (AREA)

Abstract

본 발명은 문서 부호화 및 복원 방법에 관한 것으로서, 본 발명의 문서 부호화 방법은 (a) 문자/숫자/부호/공백을 포함하는 문자열을 보다 짧은 문자열로 압축하는 단계; (b) 상기 압축된 문자열에 포함된 문자/숫자들을 형상적으로 구분이 용이한 문자/숫자들로 변환하는 단계; 및 (c) 상기 문자열의 오류 발생 여부를 확인하기 위한 오류 검출 코드를 상기 변환된 문자열에 추가하는 단계를 포함함으로써 문서에 기재된 문자/숫자들을 인식하는 인식율이 크게 향상된다.

Description

문서 부호화 및 복원 방법{Method for encoding and decoding document}
본 발명은 문서 부호화 및 복원 방법에 관한 것으로서, 특히 광학 문자 인식(Optical Character Recognition) 기술을 이용한 이미징 시스템에 적합하게 적용할 수 있는 문서 부호화 및 복원 방법에 관한 것이다.
지금까지 정보를 오랫동안 보관하기 위하여 문자를 문서에 기록하여 저장해왔다. 이 경우, 보관할 문서의 양이 적을 때는 문제가 없으나, 문서의 양이 많아지면 이는 공간을 많이 차지하게 된다. 그래서 문서에 기록된 정보를 스캐닝하여 컴퓨터를 이용한 저장장치에 저장하려는 노력이 계속되어 오고 있다. 저장장치에 정보를 보관하면 부피도 작고 적은 비용으로 많은 정보를 저장할 수 있으므로 그 장점이 매우 많다. 예컨대, 정보의 검색시간이 짧으며, 정보의 복사가 용이하고, 많은 사람이 하나의 문서에 동시에 접근할 수도 있다.
이러한 문서를 전기적인 저장장치에 저장하기 위해서는 키보드를 이용하여 문서에 기록된 정보를 워드작업으로 일일이 컴퓨터에 입력하여야 하므로 이는 많은 시간과 노력을 요구한다. 이러한 번거로움을 덜어주기 위하여 광학 문자 인식(Optical Character Recognition; 이하, OCR) 기술을 이용한 광학적 문자 인식기(Optical Character Reader)가 개발되어 문서 내에 기재된 문자, 표, 그래프, 그림 등을 스캐닝 및 인식하여 이를 디지털 정보로 변환하여 데이터베이스에 저장하고 있다.
일 예로, 관공서, 금융기관, 회사 등에서는 OCR 기술을 이용한 이미징 시스템(Imaging System)을 널리 사용하고 있다. OCR 기술의 응용 분야에는 신뢰도와 인식율의 측면에서 매우 높은 정확도를 요구하는 곳이 많다. 그러나 현재 인식 기술의 한계와 인식 대상 영상의 낮은 화질로 인해 요구되는 인식 성능을 만족시키지 못하는 경우가 많다.
종전의 OCR 시스템은 필드 문자열을 그대로 표기하고 인식하고 있는데, 이러한 경우 다음과 같은 문제점들 때문에 고인식율, 고신뢰도의 성능을 얻지 못하고 있는 실정이다.
(1) 유사한 형태를 가지고 있는 문자들이 자주 혼동되어 오인식된다. 예를 들어 6과 8, 5와 S는 유사한 형태를 가지고 있어서 서로 자주 혼동된다. 기존의 문서들은 이 같은 패턴을 많이 포함하고 있기 때문에 오인식의 주된 원인이 된다.
(2) 길이가 긴 문자열은 인식 오류가 발생할 확률이 높다. 예를 들어 38자리의 숫자로 구성된 문자열의 경우 각 문자별 인식율을 99%라고 가정할 경우 부가 정보가 없다면 문자열 단위 인식율은 0.9938 = 0.6825이므로 약 68.25%정도의 문자열 단위 인식율 밖에는 얻지 못한다. 따라서, 문자열이 길면 길수록 많은 인식 오류가 발생하게 된다.
(3) 인식 오류가 발생하더라도 인식 오류가 발생하였는지 여부를 알 수 있는 방법이 없다. 따라서 인식 오류를 찾기 위해서는 사람이 직접 눈으로 확인해야 하기 때문에 처리 시간 및 비용 면에서 상당한 비용이 소모된다.
본 발명이 이루고자하는 기술적 과제는 문자를 인식하는 과정에서 발생하는 인식 오류를 줄이고 인식률을 향상시키는 문서 부호화 방법을 제공하는 것이다.
본 발명이 이루고자하는 다른 기술적 과제는 상기 부호화 방법에 따라 부호화되어 문서에 프린트된 문자열의 복원 방법을 제공하는 것이다.
상기 기술적 과제를 이루기 위하여 본 발명은,
(a) 문자/숫자/부호/공백을 포함하는 문자열을 보다 짧은 문자열로 압축하는 단계; (b) 상기 압축된 문자열에 포함된 문자/숫자들을 형상적으로 구분이 용이한 문자/숫자들로 변환하는 단계; 및 (c) 상기 문자열의 오류 발생 여부를 확인하기 위한 오류 검출 코드를 상기 변환된 문자열에 추가하는 단계를 포함하는 문서 부호화 방법을 제공한다.
상기 기술적 과제를 이루기 위하여 본 발명은 또한,
(a) 문자/숫자/부호/공백을 포함하는 문자열을 보다 짧은 문자열로 압축하는 단계; (b) 압축된 문자열의 오류 발생 여부를 확인하기 위한 오류 검출 코드를 상기 압축된 문자열에 추가하는 단계; 및 (c) 상기 오류 검출 코드가 추가된 문자열에 포함된 문자/숫자들을 형상적으로 구분이 용이한 문자/숫자들로 변환하는 단계를 포함하는 문서 부호화 방법을 제공한다.
바람직하기는, 상기 (c) 단계는 (c-1) 표준의 16진수를 구성하는 문자/숫자들을 상호간에 형상적으로 구분이 용이한 문자/숫자들로 재구성한 변형 16진수를 생성하는 단계; (c-2) 상기 압축된 문자열은 다수개의 2진수 비트들로 구성되며, 상기 비트들을 소정 개수씩 그룹화하는 단계; (c-3) 상기 그룹화된 비트들을 상기 변형 16진수를 이용하여 16진수로 변환하는 단계를 포함한다.
상기 다른 기술적 과제를 이루기 위하여 본 발명은,
문자/숫자들을 포함하는 문자열을 보다 짧은 문자열로 압축하고, 상기 압축된 문자열에 포함된 문자/숫자들을 형상적으로 구분이 용이한 문자/숫자들로 변환하며, 상기 문자열의 오류 발생 여부를 확인하기 위한 오류 검출 코드를 상기 변환된 문자열에 추가한 후 이것을 문서에 프린트한 상태에서, 상기 문서에 프린트된 문자열을 복원하는 방법에 있어서, (a) 상기 문서에 프린트된 문자열을 읽어들이는 단계; (b) 읽어들인 문자열의 오류 검출 코드를 검출하여 상기 문자열을 읽어들이는 과정에서 오류가 발생하였는지 여부를 판단하는 단계; (c) 오류가 없을 경우, 상기 변환된 문자열을 역변환하여 상기 압축된 문자열을 재생하는 단계; 및 (d) 상기 압축된 문자열의 압축을 해제하여 압축되기 이전의 원래의 문자열을 재생하는 단계를 포함하는 문서 복원 방법을 제공한다.
상기 다른 기술적 과제를 이루기 위하여 본 발명은 또한,
문자/숫자들을 포함하는 문자열을 보다 짧은 문자열로 압축하고, 압축된 문자열의 오류 발생 여부를 확인하기 위한 오류 검출 코드를 상기 압축된 문자열에 추가하며, 이 문자열에 포함된 문자/숫자들을 형상적으로 구분이 용이한 문자/숫자들로 변환한 후 이것을 문서에 프린트한 상태에서, 상기 문서에 프린트된 문자열을 복원하는 방법에 있어서, (a) 상기 문서에 프린트된 문자열을 읽어들이는 단계; (b) 읽어들인 문자열을 역변환하여 상기 오류 검출 코드가 추가된 문자열을 재생하는 단계; (c) 상기 오류 검출 코드를 검출하여 상기 문자열을 읽어들이는 과정에서 오류가 발생하였는지 여부를 판단하는 단계; 및 (d) 오류가 없을 경우, 상기 (c) 단계의 문자열의 압축을 해제하여 압축되기 이전의 원래의 문자열을 재생하는 단계를 포함하는 문서 복원 방법을 제공한다.
상기 본 발명에 의하여 문서에 기록된 문자/숫자들의 인식율이 크게 향상된다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명에 따른 문서 부호화 방법을 도시한 흐름도이다. 도 1을 참조하면 본 발명의 문서 부호화 방법은 제1 내지 제5단계들(111∼151)를 통하여 실행된다.
제1 단계(111)는 문서에 기재되어 있는 문자열을 읽어들이는 단계이다. 문자열을 읽어들이기 위하여 광학적 문자 인식기(Optical Character Reader)를 사용할 수 있다. 광학적 문자 인식기는 종이에 인쇄되거나 수서된 문자를 광학 문자 인식으로 읽어서 컴퓨터 텍스트로 변환하는 입력장치이다. 문자 이외에 연필 등으로 써넣은 마크를 읽거나 드롭 아웃 컬러(drop-out color)로 표시된 기호나 숫자 위에 연필로 써넣은 마크를 읽기 위해서는 광학적 마크 인식기(Optical Mark Reader)를 이용한다.
제2 단계(121)는 제1 단계(111)에서 읽어들인 문자열을 보다 짧은 문자열로 압축하는 단계이다. 문자열은 문자, 숫자, 부호, 공백 등을 포함한다. 문자열을 압축하는 압축 기법은 문자열을 압축하여 짧은 길이의 비트(bit)열로 변환하는 기술이다. 인식 대상이 되는 문자열은 텍스트 문자로 구성되어 있다. 이를 압축해서 출력한 후 인식해서 원래의 문자열로 복원하기 위해서는 비손실 압축기술을 사용해야 한다. 텍스트 문자열의 압축에 많이 사용되는 압축 기법으로는 허프만 코딩(Hufman Coding), 런-렝쓰 코딩(Run-Length Coding), 산술 코딩(Arithmetic Coding), 버로우 휠러 변환(Burrows Wheeler Transform), 사전기반 압축 기법, LZW(Lempel Ziv Welch) 등이 있으며 이 중 어느 것을 사용해도 무방하다. 이 중 한 예로 허프만 코딩에 관해 설명하기로 한다.
허프만 코딩은 변환 대상 문자열의 각 문자를 가변 길이의 짧은 비트열 코드로 나타내는 압축 기법이다. 이 때, 각 문자에 대응하는 비트열 코드는 그 문자의 사용 빈도수가 많을수록 짧게 지정한다. 또한 특정 코드가 다른 코드의 앞 부분과 동일하지 않도록 한다. 이 같은 코드 체계는 허프만 트리라는 구조체를 이용해서 이루어진다.
예를 들어 압축 대상 문자가 'A'부터 'H'까지의 알파벳이며 각 문자의 빈도수가 A: 14, B: 1, C: 1, D: 1, E: 1, F: 1, G: 3, H: 4 라고 가정한다.
이 때 허프만 트리를 만드는 알고리즘은 다음과 같다.
(1) 각 문자를 이용하여 문자와 빈도수를 갖는 노드(node)들을 만든다.
(2) 빈도수가 가장 작은 노드 2개를 선택한다.
(3) 선택된 2개를 자(child)로 하는 모(parent) 노드를 만든다. 이 때 새로운 노드의 빈도수는 자 노드의 빈도수의 합으로 지정한다.
(4) (2),(3)의 과정을 모든 노드가 하나의 트리로 연결될 때까지 반복한다.
상기와 같은 알고리즘을 통해 만들어진 허프만 트리는 도 2에 도시된 바와 같다.
허프만 트리가 완성되면 근(root) 노드로부터 각 문자까지의 경로(path)는 그 문자에 배정되는 허프만 코드이며, 다음과 같이 배정된다.
A: 0
B: 100
C: 11100
D: 11110
E: 11111
F: 11101
G: 101
H: 110
압축 방법은 압축 대상 문자열의 각 문자를 그에 대응하는 허프만 코드로 치환하면 된다. 예를 들어, 9자리 문자열인 'AADFGAGAH' 는 '0 0 11110 11101 101 0 101 0 110' 으로 표현할 수 있다. 압축된 문자열은 23 비트이므로 3바이트만으로 9자리 문자열을 표현할 수 있다.
이와 같이, 낱자단위 인식율이 동일할 때라도 문자열의 길이가 짧아질수록 문자열 단위의 인식율은 증가하게 된다. 예를 들어 99%의 인식율을 갖는 낱자단위 인식기를 이용하여 38자의 문자열을 인식할 때에는 (0.9938 = 0.6825)이므로 68.25%의 인식율을 기대할 수 있으나 30자로 압축할 경우 (0.9930 = 0.7397)이므로 73.97%, 20자로 압축할 경우 (0.9920 = 0.8179)이므로 81.79%의 인식율을 기대할 수 있다.
문자 인식기에서는 압축된 문자열을 인식하여 압축 해제 기술을 이용하면 원래의 문자열을 얻을 수 있다. 이 때, 원래의 정보를 보전하기 위해서는 비손실 압축 기법을 사용해야 한다. 이러한 과정을 통해 원래의 문자열을 직접 출력하고 인식하는 것 보다 향상된 인식 성능을 얻을 수 있을 뿐 아니라 인식 속도도 증가된다.
제3 단계(131)는 상기 압축된 문자열에 포함된 문자/숫자들을 형상적으로 구분이 용이한 문자/숫자들로 변환하는 단계이다. 도 3을 통하여 제3 단계(131)를 상세히 설명하기로 한다.
① 표준 16진수를 구성하는 문자/숫자들을 상호간에 형상적으로 구분이 용이한 문자/숫자들로 재구성한 변형 16진수를 생성한다(311). 이 과정은 상기 문서가 부호화되는 초기에 1번만 실행된다. 변형 16진수는 서로 유사도가 낮아서 혼동될 가능성이 적은 문자들로 구성하며 인식기의 성능에 따라 결정된다. 한 예로 표준 16진수에 사용되는 문자 집합 {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F} 대신 인식이 용이한 문자 집합 {0,4,5,7,A,E,G,H,J,L,N,P,T,V,X,Z}을 사용할 경우 표준 16진수와 변형 16진수의 대응은 아래 표 1과 같다.
표준 16진수 0 1 2 3 4 5 6 7 8 9 A B C D E F
변형 16진수 0 4 5 7 A E G H J L N P T V X Z
표준 16진수를 구성하는 문자/숫자들(0~9, A~F) 중에 6-8, 0-8, 2-Z, 1-l, 5-S는 상호간에 구분이 용이하지 않아서 광학적 문자 인식기가 문자 인식시 오류를 일으키기 쉽다. 따라서, 표 1에 나타낸 바와 같이, 표준 16진수에 포함된 숫자들(0~9)과 문자들(A~F) 대신에 상기 인식 오류의 주된 원인을 제공하는 문자/숫자들을 제외한 인식에 용이한 문자/숫자들로 구성된 변형 16진수를 사용할 경우 인식 성능을 크게 향상시킬 수 있다.
② 상기 압축된 문자열은 다수개의 2진수 비트들로 구성되며, 상기 비트들을 소정 개수씩 그룹화한다(321).
③ 상기 그룹화된 비트들을 상기 변형 16진수를 이용하여 16진수로 변환한다(331).
제3 단계(131)에 대해 보다 구체적으로 설명하기로 한다.
상기 압축 기법을 통해 압축된 형태는 비트들로 이루어진 비트열이 된다. 이를 프린터로 출력하기 위해서는 문자열의 형태로 바꾸어야 한다. 가장 널리 쓰이는 방법은 비트열을 2n 진수의 문자열로 나타내는 것이다. 예를 들어 n = 4일 경우 (24 = 16), 즉 16진수의 문자열(0~9, A~F)로 나타낼 수 있다. 제2 단계(121)에서 압축된 문자열인 '0 0 11110 11101 101 0 101 0 110'을 4 비트씩 그룹화하면 '0011 1101 1101 1010 1010 110' 으로 나타낼 수 있으며 각 4 bit를 표준 16진수를 이용하여 표현하면 '3DDAAC'로 표현할 수 있다.
변형 16진수에 사용될 수 있는 문자/숫자들은 상호간에 구분이 용이하여 인식에 용이한 문자 2n개로 이루어진 임의의 집합이다. 예를 들어 (n = 4) 일 경우 16개, (n = 5)일 경우 32개의 서로 구분이 잘 되는 문자/숫자들의 집합을 사용하면 된다. (n=5)인 경우 32개의 문자 집합을 사용하므로 16진수가 아니라 32진수로 변형된다. (n=4)일 경우 변형 16진수를 구성하는 문자/숫자들(0,4,5,7,A,E,G,H,J,L,N,P,T,V,X,Z)을 이용하면, 상기 압축된 문자열 '3DDAAC'는 '7VVNNT' 변환된다. 즉, 표 1을 참조하면, 상기 문자열에서 '3'은 '7'로, 'D'는 'V'로, 'A'는 'N'로, 'C'는 'T'로 각각 변환된다.
여기에서 변형 16진수에 사용되는 문자/숫자들은 (0,4,5,7,A,E,G,H,J,L,N,P,T,V,X,Z) 대신 (0,3,A,E,G,H,J,L,M,P,S,T,V,W,X,Z)을 사용해도 무방하며, 이들 문자/숫자들은 인식기의 성능에 따라 결정될 수 있다.
낱자단위 인식시 인식 오류는 대부분 6-8, 0-8, 2-Z, 1-l, 5-S 등 유사한 문자들끼리 서로 혼동되는 경우가 주류를 이룬다. 따라서 본 발명에서는 문자열을 유사한 문자들을 배제하고 재구성하여 인식에 용이한 문자들로만 문자열을 구성하기 때문에 광학 문자 인식기에서 발생하는 인식오류는 현저히 감소된다. 또한, 문자열 변환 규칙은 비공개 알고리즘을 적용할 수 있기 때문에 보안성을 향상시키는 효과를 부수적으로 얻는다.
제4 단계(141)는 상기 문자열에 오류 검출 코드를 추가하는 단계이다. 오류 검출 코드는 문자열에 인식 오류, 또는 통신 오류가 발생했는지를 알 수 있는 코드를 첨가하는 기술이다. 자주 사용되는 오류 검출 코드를 추가하는 기술은 오류교정코드(Error Correction Code; ECC), 패리티(Parity), 체크섬(Check Sum) 등이 있는데, 이들 중 요구되는 인식 신뢰도에 따라서 알맞은 기법을 선택할 수 있다.
대표적으로 많이 사용되는 가중 체크섬 기법은 다음과 같다.
① 각 자리의 문자에 대응하는 숫자들마다 가중치를 두어 가중합을 구한다.
② 가중합을 2n으로 나눈 나머지를 취한다.
③ 상기 나머지에 해당하는 문자를 추가 문자로 선택한다.
제3 단계(131)에서 생성된 문자열(7VVNNT)에 각각 대응하는 숫자는 16진수로 각각 3, 13, 13, 10, 10, 12이다. 이것을 각 자리마다 가중치를 두어 가중합을 구한다. 가중치는 다음 수학식을 이용하여 구한다.
(자릿수 - 1) mod 7 + 1
상기 수학식 1을 적용하면 문자열 '7VVNNT'의 가중 합은 다음 수학식 2에 의해 구해진다.
3 ×6 + 13 ×5 + 13 ×4 + 10 ×3 + 10 ×2 + 12 ×1 = 197
상기 수학식 2와 같이 계산된 가중합을 (24=16)으로 나눈 나머지를 취한 후 그 숫자에 해당하는 문자를 첨가한다. 즉, (197 mod 16 = 5)이므로 변형 16진수 중 2번째 문자를 택하면 'E'가 된다. 여기서, 인덱스(index)는 0부터 시작한다. 따라서 상기 문자열 '7VVNNT'에 대한 추가 문자는 'E'가 된다.
상기 문자열 '7VVNNT' 중 한 글자라도 잘 못 인식될 경우에는 가중합의 값이 '197'과 달라지기 때문에 추가된 문자 'E'와 일치하지 않게 된다. 따라서 인식된 문자열로부터 마지막 문자를 제외한 후 얻어진 추가 문자가 인식된 결과의 마지막 문자와 다를 경우 인식 오류가 발생했다고 판정할 수 있다. 이 경우 인식결과를 출력하지 않고 오인식 되었음을 통보한다.
이 같은 방법을 통해 인식 오류를 자동으로 검출할 수 있으나 더 높은 수준의 신뢰도를 원할 경우 체크섬을 다중으로 적용할 수 있다. 예를 들어 상기 문자열 '7VVNNT'에 체크섬 'E'를 더 추가하면 '7VVNNTE'가 된다. 상기 문자열 '7VVNNTE'에 상기 설명한 방법과 동일한 방법으로 체크섬을 적용할 경우 가중합은 다음 수학식 3과 같다.
3 ×7 + 13 ×6 + 13 ×5 + 10 ×4 + 10 ×3 + 12 ×2 + 5 ×1 = 263
263 mod 16 = 7
변형 16진수에서 7번째 문자는 'H'이므로 이중 체크섬을 추가하면 상기 문자열 '7VVNNTE'는 '7VVNNTEH'가 된다.
이 같은 방법으로 다중 체크섬을 사용할 경우 문자열의 길이가 늘어나는 단점이 있으나 신뢰도를 크게 높일 수 있다.
어떠한 문자 인식기라도 100%의 인식율은 보장할 수 없다. 그러나, 인식 대상 문자열에 특정 코드가 부가된다면 인식오류의 발생 여부를 알아내는 것은 가능하다. 따라서 상기와 같은 방법에 의해 오인식된 문자열을 자동으로 검출한다면 OCR기술을 도입하는 시스템에서 비용 및 처리시간을 크게 절약할 수 있다.
제5 단계(151)는 추가된 오류 검출 코드를 포함하는 문자열을 출력하는 단계이다. 문자열은 다양한 방법으로 출력될 수 있다. 예컨대, 문서에 프린트되거나, DRAM(Dynamic Random Access Memory), CD(Compact Disc), 데이터베이스 등의 전기적 저장장치에 저장될 수 있다.
도 4는 도 1에서 부호화된 문서를 복원하는 방법을 도시한 흐름도이다. 도 4를 참조하면, 문서 복원 방법은 제1 내지 제4 단계(411∼441)를 포함한다.
제1 단계(411)는 부호화되어 기록매체에 기록된 문자/숫자들을 입력하는 단계이다. 문서에 기재된 부호화된 문자열은 광학적 문자 인식기를 이용하여 읽어들이고, 전기적 저장장치에 저장된 데이터는 컴퓨터를 이용하여 읽어들인다.
제2 단계(421)는 상기 입력한 문자열에 추가된 오류 검출 코드를 검출하여 상기 문자열을 인식하는 과정에 오류가 있는지를 판단하는 단계이다. 인식 오류를 판단하는 단계는 도 1에 도시된 문서 부호화 방법 중 제4 단계(141)의 역으로 실행하면 된다.
제3 단계(431)는 오류를 판단하는 과정(425)에서 오류가 없으면 상기 문자열을 도 1에 도시된 문자 변환 단계(131)의 역으로 변환하여 압축된 문자열을 재생하는 단계이다. 만일 오류가 있으면 제1 단계(411)부터 다시 시작한다.
제4 단계(441)는 상기 제3 단계(431)의 압축된 문자열의 압축을 해제하는 단계이다. 압축을 해제하는 과정은 다음과 같다.
① 압축된 비트열을 좌측에서 우측으로 탐색한다.
② 근 노드부터 시작해서 '0'이 나오면 좌측으로, '1'이 나오면 우측으로 이동한다.
③ 잎(leaf) 노드에 도착하면 그 문자를 출력한 후 2로 간다.
도 5는 본 발명의 제2 실시예에 따른 문서 부호화 방법을 도시한 흐름도이다. 도 5에 도시된 문서 부호화 방법은 제1 내지 제5 단계(511∼551)를 포함한다. 제1, 제2 및 제5 단계(511,521,551)는 도 1의 제1, 제2 및 제5 단계(111,121,151)와 동일하며, 제3 단계(531)는 도 1에 도시된 제4 단계(141)와 동일하고, 제4 단계(541)는 도 1에 도시된 제3 단계(131)와 동일한 방법으로 실행한다.
즉, 제3 단계(531)는 압축된 문자열의 오류 발생 여부를 확인하기 위한 오류 검출 코드를 상기 압축된 문자열에 추가하는 단계이다. 이에 대해서는 도 1의 제4 단계(141)를 통해 충분히 설명되어 있다.
제4 단계(541)는 상기 오류 검출 코드가 추가된 문자열에 포함된 문자/숫자들을 형상적으로 구분이 용이한 문자/숫자들로 변환하는 단계이다. 이에 대해서도 도 1의 제3 단계(131)를 통해 충분히 설명되어 있다.
도 5의 결과는 도 1과 동일하게 된다.
도 6은 도 5의 부호화된 문자열을 복원하는 방법을 도시한 흐름도이다. 도 6에 도시된 문서 복원 방법은 제1 내지 제4 단계(611∼641)를 포함한다. 제1 및 제4 단계(611,641)는 도 4에 도시된 제1 및 제4 단계(411,441)와 동일하고, 제2 단계(621)는 도 4에 도시된 제3 단계(431)와 동일하고, 제3 단계(631)는 도 4에 도시된 제2 단계(421)와 동일한 방법으로 실행한다.
즉, 제2 단계(621)는 제1 단계(611)에서 읽어들인 부호화된 문자열을 도 1에 도시된 문자 변환 단계(131)의 역으로 변환하여 오류 검출 코드가 추가된 문자열을 재생하는 단계이다.
제3 단계(631)는 오류 검출 코드를 검출하여 오류가 있는지를 판단한다. 오류가 없으면 압축된 문자열을 재생하는 단계이다. 만일 오류가 있으면 제1 단계(611)부터 다시 시작한다. 인식 오류를 판단하는 단계(631)는 도 1에 도시된 문서 부호화 방법 중 제4 단계(141)의 역으로 실행하면 된다.
도 6의 문서 복원 방법의 결과는 도 4와 동일하다.
도 7은 본 발명의 인식율과 종래기술의 인식율을 비교하기 위한 그래프이다. 도 7에 도시된 바와 같이 본 발명에 따른 문자열 인식율(721)은 90%이고, 종래의 문자열 인식율(711)은 80%이므로, 본 발명의 문자열 인식율(721)이 훨씬 더 높다는 것을 알 수 있다. 여기서 문자열 인식율은 전체 문서 중 기각되지 않고 정인식될 비율이다. 만일 다중 체크섬을 적용할 경우, 인식 오류가 발생될 확률은 거의 제로에 가깝게 된다.
도 8은 본 발명의 신뢰도와 종래기술의 신뢰도를 비교하기 위한 그래프이다. 도 8을 참조하면, 종래의 신뢰도(811)는 99%인 반면 본 발명의 신뢰도(821)는 100%이다. 즉, 본 발명에서 다중 체크섬을 적용하게 되면 인식 오류가 제로이며, 따라서 신뢰도는 100%에 이르게 된다.
OCR 기술을 이용한 이미징 시스템은 관공서, 금융기관, 회사 등에서 널리 사용되고 있으며 앞으로 그 시장이 확대될 전망이다. OCR 모듈의 인식율 및 신뢰도는 이미징 시스템 전체의 효율을 크게 좌우하는 중요한 요소이다. 따라서, 본 발명을 적용할 경우 이미징 시스템의 효율을 극대화 할 수 있다. 뿐만 아니라 현재 인식 기술의 한계로 적용하기 어려운 고신뢰도의 인식 성능을 요구하는 시스템을 개발하는 것이 가능하므로 새로운 시장을 창출할 수 있다.
본 발명을 문자 인식기에 적용할 경우 기존의 문자 인식기보다 크게 향상된 인식 성능을 얻을 수 있다. 있다.
도면과 명세서에서 최적 실시예들이 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상술한 바와 같이 본 발명은 인식 대상 문자열을 압축하여 짧은 문자열로 변환하고, 인식 대상 문자/숫자들을 인식에 용이한 문자/숫자들로 변환함으로써 인식 오류를 크게 줄일 수 있으며, 인식 대상에 오류 검출을 위한 코드를 추가함으로써 인식 오류가 발생할 경우 자동으로 검출할 수 있다.
따라서, 문서에 기록된 문자/숫자들의 인식율 및 신뢰도가 크게 향상되며, 문서 인식에 지출되는 비용이 절약되고, 처리시간이 단축된다. 부가적으로 문자열 변환 규칙을 비공개 알고리즘으로 적용할 경우 시스템의 보안성이 크게 향상된다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 제1 실시예에 따른 문서 부호화 방법을 도시한 흐름도이다.
도 2는 도 1에 도시된 압축 방법을 설명하기 위한 허프만 트리의 일 예를 보여준다.
도 3은 도 1에 도시된 문자 변환 방법을 도시한 흐름도이다.
도 4는 도 1의 부호화된 문자열을 복원하는 방법을 도시한 흐름도이다.
도 5는 본 발명의 제2 실시예에 따른 문서 부호화 방법을 도시한 흐름도이다.
도 6은 도 5의 부호화된 문자열을 복원하는 방법을 도시한 흐름도이다.
도 7은 본 발명의 인식율과 종래기술의 인식율을 비교하기 위한 그래프이다.
도 8은 본 발명의 신뢰도와 종래기술의 신뢰도를 비교하기 위한 그래프이다.

Claims (8)

  1. (a) 문자/숫자/부호/공백을 포함하는 문자열을 보다 짧은 문자열로 압축하는 단계;
    (b) 상기 압축된 문자열에 포함된 문자/숫자들을 형상적으로 구분이 용이한 문자/숫자들로 변환하는 단계; 및
    (c) 상기 문자열의 오류 발생 여부를 확인하기 위한 오류 검출 코드를 상기 변환된 문자열에 추가하는 단계를 포함하는 것을 특징으로 하는 문서 부호화 방법.
  2. (a) 문자/숫자/부호/공백을 포함하는 문자열을 보다 짧은 문자열로 압축하는 단계;
    (b) 압축된 문자열의 오류 발생 여부를 확인하기 위한 오류 검출 코드를 상기 압축된 문자열에 추가하는 단계; 및
    (c) 상기 오류 검출 코드가 추가된 문자열에 포함된 문자/숫자들을 형상적으로 구분이 용이한 문자/숫자들로 변환하는 단계를 포함하는 것을 특징으로 하는 문서 부호화 방법.
  3. 제2항에 있어서, 상기 (c) 단계는
    (c-1) 표준의 16진수를 구성하는 문자/숫자들을 상호간에 형상적으로 구분이 용이한 문자/숫자들로 재구성한 변형 16진수를 생성하는 단계;
    (c-2) 상기 압축된 문자열은 다수개의 2진수 비트들로 구성되며, 상기 비트들을 소정 개수씩 그룹화하는 단계;
    (c-3) 상기 그룹화된 비트들을 상기 변형 16진수를 이용하여 16진수로 변환하는 단계를 포함하는 것을 특징으로 하는 문서 부호화 방법.
  4. 제3항에 있어서, 상기 (c-1) 단계는 상기 문서가 부호화되는 초기에 1번만 실행되는 것을 특징으로 하는 문서 부호화 방법.
  5. 제1항 또는 제2항에 있어서, 상기 (a) 단계는 문서에 기재된 문자열을 광학적 문자 인식기를 이용하여 읽어들이는 단계를 더 포함하는 것을 특징으로 하는 문서 부호화 방법.
  6. 문자/숫자들을 포함하는 문자열을 보다 짧은 문자열로 압축하고, 상기 압축된 문자열에 포함된 문자/숫자들을 형상적으로 구분이 용이한 문자/숫자들로 변환하며, 상기 문자열의 오류 발생 여부를 확인하기 위한 오류 검출 코드를 상기 변환된 문자열에 추가한 후 이것을 문서에 프린트한 상태에서, 상기 문서에 프린트된 문자열을 복원하는 방법에 있어서,
    (a) 상기 문서에 프린트된 문자열을 읽어들이는 단계;
    (b) 읽어들인 문자열의 오류 검출 코드를 검출하여 상기 문자열을 읽어들이는 과정에서 오류가 발생하였는지 여부를 판단하는 단계;
    (c) 오류가 없을 경우, 상기 변환된 문자열을 역변환하여 상기 압축된 문자열을 재생하는 단계; 및
    (d) 상기 압축된 문자열의 압축을 해제하여 압축되기 이전의 원래의 문자열을 재생하는 단계를 포함하는 것을 특징으로 하는 문서 복원 방법.
  7. 문자/숫자들을 포함하는 문자열을 보다 짧은 문자열로 압축하고, 압축된 문자열의 오류 발생 여부를 확인하기 위한 오류 검출 코드를 상기 압축된 문자열에 추가하며, 이 문자열에 포함된 문자/숫자들을 형상적으로 구분이 용이한 문자/숫자들로 변환한 후 이것을 문서에 프린트한 상태에서, 상기 문서에 프린트된 문자열을 복원하는 방법에 있어서,
    (a) 상기 문서에 프린트된 문자열을 읽어들이는 단계;
    (b) 읽어들인 문자열을 역변환하여 상기 오류 검출 코드가 추가된 문자열을 재생하는 단계;
    (c) 상기 오류 검출 코드를 검출하여 상기 문자열을 읽어들이는 과정에서 오류가 발생하였는지 여부를 판단하는 단계; 및
    (d) 오류가 없을 경우, 상기 (c) 단계의 문자열의 압축을 해제하여 압축되기 이전의 원래의 문자열을 재생하는 단계를 포함하는 것을 특징으로 하는 문서 복원 방법.
  8. 제6항 또는 제7항에 있어서, 상기 (a) 단계는 광학적 문자 인식기를 이용하여 상기 문서에 프린트된 문자열을 읽어들이는 것을 특징으로 하는 문서 복원 방법.
KR10-2002-0084065A 2002-12-26 2002-12-26 문서 부호화 및 복원 방법 KR100495874B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-0084065A KR100495874B1 (ko) 2002-12-26 2002-12-26 문서 부호화 및 복원 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0084065A KR100495874B1 (ko) 2002-12-26 2002-12-26 문서 부호화 및 복원 방법

Publications (2)

Publication Number Publication Date
KR20040057355A KR20040057355A (ko) 2004-07-02
KR100495874B1 true KR100495874B1 (ko) 2005-06-16

Family

ID=37349944

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0084065A KR100495874B1 (ko) 2002-12-26 2002-12-26 문서 부호화 및 복원 방법

Country Status (1)

Country Link
KR (1) KR100495874B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113595683A (zh) * 2021-07-07 2021-11-02 西安震有信通科技有限公司 基于各类编码文件的转换处理方法、装置、终端及介质

Also Published As

Publication number Publication date
KR20040057355A (ko) 2004-07-02

Similar Documents

Publication Publication Date Title
JP4685348B2 (ja) 多数の文字を扱うための効率的な照合要素構造
JP4261779B2 (ja) データ圧縮装置および方法
US6535642B1 (en) Approximate string matching system and process for lossless data compression
US7650033B2 (en) Method of compressing digital ink
US9094041B2 (en) Encoding method, information processing apparatus, and recording medium
US6737994B2 (en) Binary-ordered compression for unicode
SE518962C2 (sv) Produkt och metod för att koda data till ett matrisformat kodningsmönster
JPS59231683A (ja) データ圧縮方法
Wayner Compression algorithms for real programmers
Rahman et al. A novel lossless coding technique for image compression
JP2968112B2 (ja) 符号変換方法
KR100495874B1 (ko) 문서 부호화 및 복원 방법
US8463759B2 (en) Method and system for compressing data
CN112527951B (zh) 整数数据的存储方法、装置及存储介质
Klein et al. Generalization of Fibonacci codes to the non-binary case
JP2590287B2 (ja) データ圧縮方法およびデータ圧縮装置
Arif et al. An enhanced static data compression scheme of Bengali short message
JP3199292B2 (ja) ハフマン符号の符号化でのランレングス抽出方法、ハフマン符号変換方法およびmh符号化処理方法
Zhang Transform based and search aware text compression schemes and compressed domain text retrieval
Ali et al. Enhancing the Compression Ratio of the HCDC-Based Text Compression Scheme
JPH1155125A (ja) 文字データの圧縮・復元方法
Nithya et al. The Study of Text Compression Algorithms and their Efficiencies Under Different Types of Files
JPS5814710B2 (ja) パタ−ン分類装置
Andrii et al. UDC 004.627 LZW COMPRESSION ALGORITHM
Tiwari et al. Novel bit-level adaptive and asymmetric data compression technique

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: 20130527

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20140526

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20150526

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20160525

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20170525

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20190527

Year of fee payment: 15