KR101937398B1 - 고문서의 이미지 데이터에서의 문자 추출 시스템 및 이를 이용한 문자 추출 방법 - Google Patents

고문서의 이미지 데이터에서의 문자 추출 시스템 및 이를 이용한 문자 추출 방법 Download PDF

Info

Publication number
KR101937398B1
KR101937398B1 KR1020170136423A KR20170136423A KR101937398B1 KR 101937398 B1 KR101937398 B1 KR 101937398B1 KR 1020170136423 A KR1020170136423 A KR 1020170136423A KR 20170136423 A KR20170136423 A KR 20170136423A KR 101937398 B1 KR101937398 B1 KR 101937398B1
Authority
KR
South Korea
Prior art keywords
segment
unit
row
segments
character
Prior art date
Application number
KR1020170136423A
Other languages
English (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 KR1020170136423A priority Critical patent/KR101937398B1/ko
Application granted granted Critical
Publication of KR101937398B1 publication Critical patent/KR101937398B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/62Text, e.g. of license plates, overlay texts or captions on TV images
    • G06V20/63Scene text, e.g. street names
    • G06K9/3258
    • G06K9/3283
    • G06K9/344
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/146Aligning or centring of the image pick-up or image-field
    • G06V30/1475Inclination or skew detection or correction of characters or of image to be recognised
    • G06V30/1478Inclination or skew detection or correction of characters or of image to be recognised of characters or characters lines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/153Segmentation of character regions using recognition of characters or words

Abstract

본 발명은 디지털 이미지화된 고문서에서 한자 인식률이 향상된 문자 추출 시스템 및 이를 이용한 문자 추출 방법에 관한 것이다.

Description

고문서의 이미지 데이터에서의 문자 추출 시스템 및 이를 이용한 문자 추출 방법{System and method for extracting character in image data of old document}
본 발명은 문자 추출 시스템 및 이를 이용한 한자 추출 방법에 관한 것으로서, 상세하게는 이미지화된 고문서에서의 문자를 추출하는 문자 추출 시스템 및 이를 이용한 문자 추출 방법에 관한 것이다.
한국학 고문서는 현재 한국학 기초 연구의 기초 자료로 사용되고 있으며, 그 시대의 정치, 사회, 문화 등 각 분야를 이해하는데 중용한 단서가 된다는 점에서 학문적 가치나 보존 가치가 높다고 할 수 있다. 그러나 원본의 훼손 및 노후화로 인하여 이러한 문서를 소장하고 관리하는 데에는 많은 어려움이 있으며, 일반인이 접근하는 데에도 한계를 가지고 있다. 따라서 이러한 고문서를 전산화한다면 데이터의 영구 보존 및 활용이 가능할 뿐만 아니라 효율적인 자료 검색 및 관리가 가능할 것이다.
기존의 고문서 전선화 입력 방법은 크게 수작업 입력 방법과 OCR 기반의 자동 입력 방법으로 나눌 수 있다. 수작업 입력 방법은 스캔한 문서 영상 내의 글자를 키보드를 이용해 사람이 직접 입력하는 방식으로 한자에 대한 지식이 많은 전문 인력을 필요로 하며, 많은 글자 수에 대하여 효율적으로 입력할 수 있는 전용 입력 체계를 필요로 한다. 또한, 이러한 입력 체계를 익히기 위한 작업자의 훈련이 필요하고, 대규모 인력과 시간이 든다는 단점도 가지고 있다. 따라서 최근에는 인쇄체 문서 영상에 대하여 OCR 기술이 높은 인식 성능을 나타내므로 OCR 기반의 자동 입력 방법이 주목을 받고 있다. 그러나 실제 일반 한자 인식기를 고문서 영상에 적용 하였을 때의 결과는 대체로 낮은 인식 성능을 보이며, 오인식 결과에 대한 높은 교정 비용으로 인하여 이러한 인식기를 그대로 적용하기는 어려운 실적이다.
고문서 입력에 대한 낮은 인식 성능의 주요 원인으로는 필기체 한자 인식의 어려움을 들 수 있다. 일반적으로 필기체 한자는 필기자에 따른 필기 변이가 다양하고, 많은 문자 수가 존재하며, 구분하기 어려운 유사한 문자와 복잡한 형태의 문자가 다수 존재하기 때문에 정확한 인식이 쉽지 않다. 특히, 고문서의 경우, 뜻과 음이 같지만 글자의 형태가 다른 다양한 이체자와 획 접촉 글자 및 영상이 훼손된 글자와 같은 왜곡된 문자 영상이 많이 존재하기 때문에 인식을 더욱 어렵게 만든다.
또한, 고문서 한자 인식의 특수성으로서 고문서 데이터는 인식 대상이라고 할 수 있는 클래스의 전체 수를 정확히 알지 못한다는 점과 희귀한 글자의 경우 자료 부족으로 학습이 어렵다는 특징을 가지고 있다. 따라서 일반적인 인식 문제의 경우 실제 사용하는 클래스 수와 이를 위하여 학습되는 클래스의 수가 서로 같지만, 고문서 인식의 경우, 실제 사용하는 클래스 수가 학습된 클래스 수보다 많기 때문에 학습이 되지 않은 클래스의 입력 영상이 인식기의 입력으로 주어질 경우, 학습된 클래스 중에 하나로 할당되기 때문에 불가피한 오인식이 발생하게 된다.
이와 같이, 고문서 한자 인식이 필기 한자 인식 자체의 인식 오류와 학습에서 배제된 한자에 의한 불가피한 인식기 오류로 인하여 인식기의 전체 인식 성능에 한계를 가짐을 알 수 있다.
그러나 실제 응용에서는 오인식 결과에 대한 높은 검증 및 교정 비용으로 인하여 많은 데이터를 처리하지 못하더라도 오인식이 적고 자동화 비용, 검증 및 교정 비용, 수작업 입력 비용 등을 포함하는 전체 입력 비용을 최소화할 수 있는 그러한 실용적이고 특수한 인식을 요구한다.
본 발명의 목적은 디지털 이미지화된 고문서에서 한자 인식률이 향상된 문자 추출 시스템 및 이를 이용한 문자 추출 방법을 제공하는 것이다.
본 발명의 일 실시예에 따른 문자 추출 시스템은, 고문서의 이미지 데이터에서의 문자 추출 시스템에 있어서, 상기 이미지 데이터에서 동일한 화소값을 갖는 화소들이 서로 인접하여 모여 있는 화소 군집체를 검출하며, 상기 화소 군집체를 포함하는 영역을 유닛 세그먼트로 지정하고, 상기 유닛 세그먼트들이 서로 겹치지는 여부를 판별하고 겹치지는 정도에 따라 상기 유닛 세그먼트들의 병합여부를 결정하는 세그먼트화부; 상기 유닛 세그먼트들 검색하여 문장 부호를 검출하여 문장 부호에 대응되는 상기 유닛 세그먼트를 후보 문장 부호 세그먼트로 지정하는 후보 문장 부호 추출부; 상기 유닛 세그먼트들 중 상기 후보 문장 부호 세그먼트를 제외한 상기 유닛 세그먼트들 중 상기 고문서의 읽기 방향인 제1 방향과 동일한 행렬에 대응되는 상기 유닛 세그먼트들을 검출하고, 상기 동일한 행렬에 포함되는 상기 유닛 세그먼트들이 포함되도록 하는 문자행 세그먼트를 형성하는 문자행 세그먼트화부; 상기 유닛 세그먼트들을 상기 문자행 세그먼트 별로 분류하고, 상기 문자행 세그먼트 내의 상기 유닛 세그먼트들을 병합하여 문자 세그먼트를 형성하는 문자 세그먼트화부; 및 상기 유닛 세그먼트, 상기 후보 문장 부호 세그먼트, 및/또는 상기 문자 세그먼트에서 상기 문장 부호를 포함하는 세그먼트를 추출하는 문장 부호 추출부; 를 구비할 수 있다.
본 발명에 있어서, 상기 이미지 데이터가 바이너리 이미지(binary image)인지 여부를 판별하고, 바이너리 이미지가 아닌 경우 바이너리 이미지로 변환하는 변환부를 더 구비할 수 있다.
본 발명에 있어서, 상기 세그먼트화부는, 상기 이미지 데이터에서 상기 화소 군집체를 검출하는 화소 검출부; 상기 화소 군집체를 포함하도록 상기 화소 군집체에 외접하는 사각형 영역을 상기 유닛 세그먼트로 설정하는 유닛 세그먼트 형성부; 서로 겹치지지 않으면서 가로변과 세로변의 길이의 비가 1.3배 이하인 상기 유닛 세그먼트들 중 넓이가 가장 큰 유닛 세그먼트를 독립 세그먼트로 설정하는 독립 세그먼트 설정부; 상기 유닛 세그먼트들의 크기를 판별하여 제1 소정의 크기의 이상이고 제2 소정의 크기 이하인 유닛 세그먼트들을 제1 세그먼트 집합으로 지정하는 제1 세그먼트 집합 형성부; 및 서로 인접한 상기 유닛 세그먼트들이 서로 겹치지는 여부를 판별하며, 이웃하는 상기 유닛 세그먼트들과 서로 겹치는 유닛 세그먼트들을 병합하여 하나의 유닛 세그먼트를 형성하는 세그먼트 병합부; 를 포함하며, 상기 화소 군집체는 상, 하, 좌, 우, 대각선 방향으로 서로 인접한 화소들이 0이 아니 동일한 화소값을 가질 수 있다.
본 발명에 있어서, 상기 제1 세그먼트 집합 형성부는 상기 유닛 세그먼트의 가로변 또는 세로변이 5픽셀 이하에 해당하는 상기 유닛 세그먼트를 제외한 나머지 상기 유닛 세그먼트들을 상기 제1 세그먼트 집합으로 지정할 수 있다.
본 발명에 있어서, 상기 세그먼트 병합부는, 상기 제1 세그먼트 집합 내의 서로 인접한 상기 유닛 세그먼트들이 겹치는지 여부를 판별하고, 서로 겹치는 상기 유닛 세그먼트들의 겹치는 면적을 구하며, 상기 겹치는 면적이 서로 겹치는 상기 유닛 세그먼트들 각각의 면적의 제1 소정의 비율 이상인 경우, 또는 서로 겹치는 상기 유닛 세그먼트들이 합쳐진 면적에 대한 상기 유닛 세그먼트들 각각의 면적 비율이 제2 소정의 비율 이상인 경우, 서로 겹치는 상기 유닛 세그먼트들을 병합하여 하나의 유닛 세그먼트로 지정할 수 있다.
본 발명에 있어서, 상기 제1 소정의 비율은 10%이며, 상기 제2 소정의 비율은 95%일 수 있다.
본 발명에 있어서, 상기 후보 문장 부호 추출부는 상기 제1 세그먼트 집합에 속하는 상기 유닛 세그먼트들 각각의 면적을 구하고, 최대 빈도를 갖는 유닛 세그먼트의 면적의 25% 이하의 면적을 갖는 유닛 세그먼트를 상기 후보 문장 후보 세그먼트로 지정할 수 있다.
본 발명에 있어서, 상기 문자행 세그먼트화는, 상기 제1 세그먼트 집합에 속하는 상기 유닛 세그먼트들 중 그 폭이 상기 독립 세그먼트의 폭의 120% 이하이고 그 높이가 상기 독립 세그먼트의 높이의 40% 이상인 유닛 세그먼트들을 선별하여 제2 세그먼트 집합을 형성하는 제2 세그먼트 집합 형성부; 상기 제2 세그먼트 집합 중 첫 번째 유닛 세그먼트를 포함하는 행 세그먼트를 형성하며, 상기 행 세그먼트와 두 번째 유닛 세그먼트 사이의 상기 제1 방향에서의 거리를 비교하여 소정의 값보다 작은 경우 상기 두 번째 유닛 세그먼트가 상기 행 세그먼트에 포함되도록 상기 행 세그먼트를 확장시키며, 소정의 값보다 큰 경우 상기 두 번째 유닛 세그먼트를 시작으로 하는 새로운 행 세그먼트를 형성하는 행 세그먼트 형성부; 및 동일한 상기 제1 방향에 위치하는 상기 행 세그먼트들의 상기 제1 방향에서의 중첩 정도에 따라 상기 행 세그먼트들을 병합하여 상기 문자행 세그먼트를 형성하며, 상기 행 세그먼트의 폭과 상기 독립 세그먼트의 폭을 비교하여 소정의 비율 이상으로 상기 행 세그먼트의 폭이 큰 경우 상기 행 세그먼트를 분할하여 상기 문자행 세그먼트를 형성하는 문자행 세그먼트 형성부; 를 포함할 수 있다.
본 발명에 있어서, 상기 행 세그먼트 형성부는, 상기 제2 세그먼트 집합에 속하는 상기 유닛 세그먼트와 상기 행 세그먼트 사이의 거리가, 상기 독립 세그먼트의 높이의 2.67배 이하인 경우 상기 유닛 세그먼트가 포함되도록 상기 행 세그먼트를 확장시키며, 상기 제2 세그먼트 집합에 속하는 상기 유닛 세그먼트와 상기 행 세그먼트 사이의 거리가, 상기 독립 세그먼트의 높이의 2.67배를 초과하는 경우 상기 유닛 세그먼트가 위치하는 지점을 시작으로 상기 유닛 세그먼트를 포함하는 새로운 행 세그먼트를 형성할 수 있다.
본 발명에 있어서, 상기 행 세그먼트 형성부는, 상기 제2 세그먼트 집합에 속하는 상기 유닛 세그먼트와 상기 행 세그먼트가 상기 제1 방향에서 서로 중첩되는지 여부를 판별하고, 중첩된 부분을 포함한 상기 행 세그먼트와 상기 유닛 세그먼트 사이의 폭이 상기 독립 세그먼트의 폭의 1.2배 이하인 경우 상기 유닛 세그먼트가 포함되도록 상기 행 세그먼트를 확장시키며, 중첩된 부분을 포함한 상기 행 세그먼트와 상기 유닛 세그먼트 사이의 폭이 상기 독립 세그먼트의 폭의 1.2배를 초과하는 경우 상기 유닛 세그먼트가 위치하는 지점을 시작으로 상기 유닛 세그먼트를 포함하는 새로운 행 세그먼트를 형성할 수 있다.
본 발명에 있어서, 상기 문자행 세그먼트 형성부는, 상기 행 세그먼트 형성부에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트와, 상기 행 세그먼트와 동일한 상기 제1 방향으로 그 아래 위치하는 다른 행 세그먼트 사이의 상기 제1 방향에서의 중첩되는 정도를 판별하며, 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트 사이의 상기 제1 방향으로의 중첩되는 폭이 상기 독립 세그먼트의 폭의 1.44배 미만인 경우, 또는 상기 하나의 행 세그먼트의 면적이 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트가 상기 제1 방향으로 중첩되는 부분의 면적보다 작은 경우, 또는 상기 다른 행 세그먼트의 면적이 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트가 상기 제1 방향으로 중첩되는 부분의 면적보다 작은 경우, 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트를 병합하여 상기 문자행 세그먼트를 형성할 수 있다.
본 발명에 있어서, 상기 문자행 세그먼트 형성부는, 상기 행 세그먼트 형성부에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트와, 상기 하나의 행 세그먼트와 동일한 상기 제1 방향으로 그 아래 위치하는 다른 행 세그먼트 사이의 상기 제1 방향에서의 중첩되는 정도를 판별하며, 상기 다른 행 세그먼트의 높이가 상기 독립 세그먼트의 높이의 1.33배를 초과하는 경우, 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트 사이의 상기 제1 방향으로의 중첩되는 폭이 상기 독립 세그먼트의 폭의 1.44배 미만인 경우, 상기 하나의 행 세그먼트의 폭이 상기 다른 행 세그먼트의 폭의 0.5배 이상인 경우, 및 상기 다른 행 세그먼트의 폭이 상기 다른 행 세그먼트의 폭의 0.5배 이상인 경우 중 중 어느 하나에 해당하면, 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트를 병합하여 상기 문자행 세그먼트를 형성할 수 있다.
본 발명에 있어서, 상기 문자행 세그먼트 형성부는, 상기 행 세그먼트의 높이가 상기 독립 세그먼트의 높이의 0.22배 미만이거나, 상기 행 세그먼트의 폭이 상기 독립 세그먼트의 폭의 0.4배 미만인 경우 상기 행 세그먼트를 삭제할 수 있다.
본 발명에 있어서, 상기 문자행 세그먼트 형성부는, 상기 행 세그먼트 형성부에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트가 상기 읽기 방향으로 적어도 2개의 다른 행 세그먼트와 중첩되는 경우, 상기 하나의 행 세그먼트가 상기 적어도 2개의 다른 행 세그먼트와 중첩되는 면적이 상기 하나의 행 세그먼트의 0.8배를 초과할 때 상기 하나의 행 세그먼트를 삭제할 수 있다.
본 발명에 있어서, 상기 문자행 세그먼트 형성부는, 상기 행 세그먼트 형성부에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트와, 상기 하나의 행 세그먼트와 동일한 상기 제1 방향으로 그 아래 위치하는 다른 행 세그먼트 사이의 상기 제1 방향에서의 중첩되는 정도를 판별하며, 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트가 중첩되는 폭이 상기 하나의 행 세그먼트 또는 상기 다른 행 세그먼트의 폭의 0.4배를 초과하는 경우 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트를 병합하여 하나의 문자행 세그먼트를 형성할 수 있다.
본 발명에 있어서, 상기 문자행 세그먼트 형성부는, 상기 행 세그먼트 형성부에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트의 폭이 상기 독립 세그먼트의 폭의 1.5배 이상인 경우, 상기 하나의 행 세그먼트를 n개로 분할하며, 상기 n은 w/(1.5w0)이고, 여기서 상기 w는 상기 행 세그먼트의 폭이고, 상기 w0는 상기 독립 세그먼트의 폭일 수 있다.
본 발명에 있어서, 상기 문자행 세그먼트 형성부는, 상기 행 세그먼트 형성부에 의해 형성된 상기 행 세그먼트들이 서로 겹치는지 여부를 판별하며, 서로 겹치는 행 세그먼트들의 겹치는 면적이 각각의 행 세그먼트의 면적의 65%를 초과하는 경우, 상기 서로 겹치는 행 세그먼트들을 병합하여 하나의 문자행 세그먼트를 형성할 수 있다.
본 발명에 있어서, 상기 문자 세그먼트화부는, 상기 제1 세그먼트 집합 형성부에 의해 제외된 상기 유닛 세그먼트들을 상기 유닛 세그먼트의 위치에 대응되는 상기 문자행 세그먼트에 포함시키며, 상기 문자행 세그먼트 내에서 상기 읽기 방향에 수직한 제2 방향으로 배열되는 상기 유닛 세그먼트들을 병합하고, 상기 문자행 세그먼트 내에서 상기 제1 방향으로 배열되는 상기 유닛 세그먼트들에 대해 서로 병합한 유닛 세그먼트의 높이와 폭이 상기 독립 세그먼트의 높이 및 폭을 초과하지 않는 경우 병합하여 상기 문자 세그먼트를 형성하며, 상기 독립 세그먼트의 높이 및 폭을 초과하는 경우 병합하지 않을 수 있다.
본 발명에 있어서, 상기 문자 세그먼트화부는, 상기 유닛 세그먼트가 상기 제1 방향에서 상기 유닛 세그먼트 위와 아래에 배치되는 유닛 세그먼트들과 병합이 가능한 경우, 상기 유닛 세그먼트와 거리가 가까운 유닛 세그먼트와 병합하여 상기 문자 세그먼트를 형성할 수 있다.
본 발명에 있어서, 상기 문자 추출 시스템은, 상기 행 세그먼트 형성부에 의해 형성된 행 세그먼트들 각각에 대해 상기 제1 방향에 수직인 제2 방향으로 적어도 2개의 상기 유닛 세그먼트들이 배열되는 영역을 소자쌍행구역으로 지정하고, 상기 소자쌍행구역 내의 화소 군집체를 포함하는 영역을 소자쌍행 세그먼트로 설정하는 소자쌍행 세그먼트화부; 및 상기 소자쌍행 세그먼트, 상기 문자 세그먼트, 및 후보 문장 부호 세그먼트들을 통합하고 상기 읽기 방향에 따라 정렬시키는 세그먼트 통합부; 를 더 구비할 수 있다.
본 발명에 있어서, 상기 소자쌍행 세그먼트화부는, 상기 행 세그먼트 내의 상기 유닛 세그먼트들에 대해 상기 제1 방향으로 중심부분에서의 화소농도를 구하고, 상기 화소농도가 소정의 값보다 작은 상기 유닛 세그먼트들을 검출하는 소자쌍행 검출부; 상기 소자쌍행 검출부에 의해 검출된 상기 유닛 세그먼트들을 병합하여 소자쌍행구역을 구성하는 소자쌍행 구성부; 및 상기 소자쌍행구역의 수평히스토그램을 구하고 상기 수평히스토그램 값이 가장 작은 부분을 중심으로 좌우로 분리하여 각각을 소자쌍행 세그먼트로 설정하는 소자쌍행 세그먼트 형성부; 를 포함할 수 있다.
본 발명에 있어서, 상기 문장 부호 추출부는, 상기 문자 세그먼트들, 상기 소자쌍행 세그먼트들, 및 상기 후보 문장 부호 세그먼트들 중 상기 문자 세그먼트들의 평균 크기의 1/3보다 작은 것을 문장 부호 세그먼트로 지정할 수 있다.
본 발명의 일 실시예에 따른 고문서의 이미지 데이터에서의 문자 추출 방법은, 상기 이미지 데이터에서 동일한 화소값을 갖는 화소들이 서로 인접하여 모여 있는 화소 군집체를 검출하며, 상기 화소 군집체를 포함하는 영역을 유닛 세그먼트로 지정하고, 상기 유닛 세그먼트들이 서로 겹치지는 여부를 판별하고 겹치지는 정도에 따라 상기 유닛 세그먼트들의 병합여부를 결정하는 단계; 상기 유닛 세그먼트들 검색하여 문장 부호를 검출하여 문장 부호에 대응되는 상기 유닛 세그먼트를 후보 문장 부호 세그먼트로 지정하는 단계; 상기 유닛 세그먼트들 중 상기 후보 문장 부호 세그먼트를 제외한 상기 유닛 세그먼트들 중 상기 고문서의 읽기 방향인 제1 방향과 동일한 행렬에 대응되는 상기 유닛 세그먼트들을 검출하고, 상기 동일한 행렬에 포함되는 상기 유닛 세그먼트들이 포함되도록 하는 문자행 세그먼트를 형성하는 단계; 상기 유닛 세그먼트들을 상기 문자행 세그먼트 별로 분류하고, 상기 문자행 세그먼트 내의 상기 유닛 세그먼트들을 병합하여 문자 세그먼트를 형성하는 단계; 상기 유닛 세그먼트, 상기 후보 문장 부호 세그먼트, 및/또는 상기 문자 세그먼트에서 상기 문장 부호를 포함하는 세그먼트를 추출하는 단계; 를 구비할 수 있다.
본 발명의 일 실시예에 따른 기록매체는 상기 방법을 수행하기 위한 일련의 명령어 집합이 기록된 컴퓨터로 판독할 수 있다.
본 발명의 일 실시예에 따르면, 고문서의 이미지 데이터에서 한자 인식률을 향상시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 문자 추출 시스템을 개략적으로 나타내는 구성도이다.
도 2는 도 1의 소자쌍행 세그먼트화부를 개략적으로 나타내는 구성도이다.
도 3은 바이너리 이미지로 변환된 고문서를 나타내는 도면이다.
도 4는 검출된 화소 군집체를 포함하는 유닛 세그먼트를 나타내는 도면이다.
도 5는 독립 세그먼트의 높이보다 더 큰 높이를 갖는 유닛 세그먼트를 나타내는 도면이다.
도 6은 서로 겹치는 유닛 세그먼트들을 나타내는 도면이다.
도 7은 여러 개의 유닛 세그먼트들로 이루어진 문자를 나타내는 도면이다.
도 8 및 9는 행 세그먼트의 생성을 나타내는 도면이다.
도 10 내지 13은 문자행 세그먼트의 생성을 나타내는 도면이다.
도 14는 소자쌍행 세그먼트를 포함한 이미지를 나타내는 도면이다.
도 15는 본 발명의 일 실시예에 따른 문자 추출 방법을 나타내는 흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 이를 상세한 설명을 통해 상세히 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함할 수 있다.
본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략할 수 있다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호일 수 있다.
또한, 본 명세서에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시를 위한 구체적인 내용을 설명한다.
도 1은 본 발명의 일 실시예에 따른 고문서의 이미지 데이터에서의 문자 추출 시스템을 개략적으로 나타내는 구성도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 문자 추출 시스템(100)은 변환부(110), 세그먼트화부(120), 후보 문장 부호 추출부(130), 문자행 세그먼트화부(140), 문자 세그먼트화부(150), 소자쌍행 세그먼트화부(160), 세그먼트 병합부(170), 및 문장 부호 추출부(180)를 구비할 수 있다.
변환부(110)는 고문서의 디지털 데이터가 바이너리 이미지(binary image)인지 여부를 판별하고, 바이너리 이미지가 아닌 경우 바이너리 이미지로 변환할 수 있다. 고문서를 디지털화함에 있어서 다양한 형태로 이루어질 수 있다. 고문서를 사진 촬영하거나 PDF 등 문서로 생성할 수 있다. 디지털화된 고문서는 여러 형태일 수 있으나, 변환부(110)는 디지털화된 고문서를 바이너리 이미지(BI)로 변환할 수 있다. 고문서는 일반적으로 컬러가 아닌 종이 위에 붓으로 그려진 흑백인 경우가 대부분이므로 바이너리 이미지로 변환하여 처리하여도 분석에 문제가 없으며 바이너리 이미지는 데이터 크기가 크지 않으므로 빠른 속도록 데이터를 처리할 수 있다. 본 발명은 이에 한정되는 것은 아니며, 변환부(110)는 디지털화된 고문서에서 문자부분과 여백부분을 구분할 수 있는 다양한 형태의 데이터로 변환할 수 있다.
세그먼트화(120)는 상기 이미지 데이터에서 동일한 화소값을 갖는 화소들이 서로 인접하여 모여 있는 화소 군집체(PG)를 검출하며, 상기 유닛 세그먼트들이 서로 겹치지는 여부를 판별하고 겹치지는 정도에 따라 상기 유닛 세그먼트들의 병합여부를 결정할 수 있다.
세그먼트화(120)는 일 예로서 도 1에 도시된 바와 같이 화소검출부(121), 유닛 세그먼트 형성부(122), 세그먼트 집합 형성부(124), 및 세그먼트 병합부(125)를 포함할 수 있다.
화소검출부(121)는 이미지 데이터에서 상기 화소 군집체를 검출할 수 있다.
고문서는 일반적으로 글자 영역과 여백 영역이 명확히 구분될 수 있다. 즉 고문서는 종이 위에 붓으로 글자를 그리거나 금속 활자 또는 목판를 종이에 인쇄하므로 문자 영역은 먹물색(예를 들면, 검정색)이고 여백은 바탕색(예를 들면, 흰색)이다. 고문서를 디지털화하는 경우 여백의 화소값과 문자 영역의 화소값은 큰 차이를 가지며, 예를 들면 여백의 화소값은 0이고 문자 영역은 화소값은 0이 아닌 값을 가질 수 있다. 고문서의 이미지 데이터가 바이너리 이미지인 경우 문자 부분의 화소값은 1일 수 있다.
화소검출부(121)는 이미지 데이터를 화소 단위로 스캔하여 화소값이 1인 화소를 검출할 수 있다. 화소값이 1인 화소를 검출한 후 화소검출부(121)는 화소값이 1인 화소의 인접한 화소들의 화소값을 모두 검출한다. 화소값이 1인 화소의 상, 하, 좌, 우, 대각선으로 인접한 8개의 화소들의 화소값을 검출하며, 화소값이 1로 판별된 화소를 시작으로 인접한 화소들의 화소값을 연속적으로 검출한다. 인접한 화소들이 1인 화소값을 갖는 경우 화소검출부(121)는 이들을 화소 군집체(PG)로 지정을 할 수 있다.
화소 군집체(PG) 내의 화소들은 모두 화소값이 1이며, 화소 군집체(PG)의 최외각에 위치하는 화소들에 인접한 화소들은 화소값이 0일 수 있다. 즉 화소 군집체(PG)는 서로 연결되지 않은 획(劃)일 수 있다. 한 글자를 나타내는 문자이지만 획이 분리된 경우 화소검출부(121)는 분리된 획들 각각을 화소 군집체(PG)로 판별할 수 있다. 필기체로 작성된 고문서의 경우에는 획들이 연결되는 경우도 있으며, 이 경우 화소검출부(121)는 서로 연결된 획들을 하나의 화소 군집체(PG)로 판별할 수 있다.
도 3을 참조하면, 백성 민(民)(a)의 경우 여러 획으로 이루어져 있으나 각각이 획들이 모두 연결되어 있으므로 화소검출부(121)는 민(民)(a)을 하나의 화소 군집체(PG)로 판별할 수 있다. 이에 반하여 없을 무(無)(b)의 경우 서로 연결되지 않은 여러 획들로 이루어지며 이들 획들은 각각의 화소 군집체(PG)로 판별될 수 있다.
유닛 세그먼트 형성부(122)는 하나의 화소 군집체(PG)를 포함하도록 화소 군집체(PG)에 외접하는 사각형 영역을 유닛 세그먼트(US)로 설정할 수 있다. 유닛 세그먼트(US)는 4개의 변 각각이 화소 군집체(PG)에 접하는 사각형일 수 있다. 앞서 설명한 바와 같이 화소 군집체(PG)는 서로 인접한 화소들의 집합이며 문자의 형태에 따라 적어도 하나의 획일 수도 있고, 한 글자의 문자일 수 있으며, 서로 연결된 복수 개의 문자일 수도 있다. 또한 문자가 아닌 행간선(c)일 수 있다. 유닛 세그먼트 형성부(122)는 하나의 화소 군집체(PG)를 포함하도록 유닛 세그먼트(US)를 형성되므로 유닛 세그먼트(US)는 획, 문자, 문장 부호, 또는 행간선 등을 포함할 수 있다.
독립 세그먼트 설정부(123)는 유닛 세그먼트(US)들 중 독립 세그먼트를 지정할 수 있다. 독립 세그먼트는 유닛 세그먼트(US)들 중 서로 겹치지지 않으며 가로변과 세로변의 길이의 비가 소정의 비율 이하이면서 넓이가 가장 큰 유닛 세그먼트(US)이다. 독립 세그먼트는 한자(漢字) 한 글자를 포함하는 사각형일 수 있다. 한자(漢字)는 가로와 세로이 비율이 동일한 경우가 많으나, 고문서는 필기체로 기재되어 있고, 날 일(日)자와 같이 몇몇 한자는 가로와 세로의 비율이 차이가 있으므로 독립 세그먼트를 정함에 있어서는 상기 소정의 비율을 1.3배로 지정할 수 있다.
독립 세그먼트 설정부(123)는 유닛 세그먼트 형성부(122)에 의해 형성된 유닛 세그먼트(US)들이 위치상 서로 겹치는지 여부를 판별할 수 있다. 유닛 세그먼트 형성부(122)는 유닛 세그먼트(US)를 형성하면서 유닛 세그먼트(US)의 좌표 값도 함께 저장할 수 있다. 독립 세그먼트 설정부(123)는 유닛 세그먼트(US)의 좌표 값을 비교하여 유닛 세그먼트(US)들이 서로 겹치지는 여부를 판별할 수 있다.
독립 세그먼트 설정부(123)는 서로 겹치지지 않는 유닛 세그먼트(US)들 각각의 가로변의 길이와 세로변의 길이를 구하고, 가로변과 세로변 중 길이가 긴 변의 길이가 짧은 변의 길이의 1.3배 이하인 유닛 세그먼트(US)들을 선별할 수 있다. 유닛 세그먼트 형성부(122)에 의해 형성된 유닛 세그먼트(US)들은 화소 군집체(PG)를 기준으로 형성되므로 문자뿐만 아니라 문장 부호, 테두리, 행간 선 등 문자가 아닌 것들도 포함할 수 있다. 행간 선(c)의 경우 가로 변에 비해 세로변의 길이가 매우 크므로 독립 세그먼트 설정부(123)는 상기 조건에 따르지 않는 행간 선을 제외한 다른 유닛 세그먼트(US)들을 대상으로 독립 세그먼트를 선정할 수 있다.
독립 세그먼트 설정부(123)는 긴 변의 길이가 짧은 변의 길이의 1.3배 이하인 유닛 세그먼트(US)들 각각의 넓이를 구하며, 넓이가 가장 큰 유닛 세그먼트(US)를 독립 세그먼트로 설정할 수 있다. 독립 세그먼트 설정부(123)는 독립 세그먼트의 높이, 폭, 및 넓이를 메모리에 저장할 수 있다.
독립 세그먼트는 한 글자만을 포함한 유닛 세그먼트(US)들 중 가장 큰 유닛 세그먼트(US)라고 볼 수 있다. 독립 세그먼트는 행 세그먼트, 문자행 세그먼트, 문자 세그먼트 들을 판별하는 기준이 될 수 있다. 이에 대해서는 후술한다.
제1 세그먼트 집합 형성부(124)는 유닛 세그먼트(US)들의 평균 넓이와 평균 높이를 구하고, 넓이가 유닛 세그먼트(US)들의 평균 넓이의 1/3보다 크고 평균 넓이의 1.5배보다 작으며, 높이가 유닛 세그먼트(US)들의 평균 높이의 1/3보다 크고 평균 높이의 1.5배보다 작은 유닛 세그먼트(US)들을 모아 제1 세그먼트 집합을 형성할 수 있다.
제1 세그먼트 집합 형상부(124)는 유효하지 않는 세그먼트들을 제거할 수 있다. 즉 제1 세그먼트 집합 형상부(124)는 글자로 보기 어려운 매우 작은 유닛 세그먼트(US)들을 제거할 수 있다. 일 예로서 제1 세그먼트 집합 형성부(124)는 독립 세그먼트의 폭의 1/10보다 작거나, 상기 유닛 세그먼트의 가로변 또는 세로변이 5픽셀 이하에 해당하는 유닛 세그먼트(US)를 제외하고, 나머지 유닛 세그먼트(US)들을 제1 세그먼트 집합으로 지정할 수 있다.
제1 세그먼트 집합 형상부(124)는 독립 세그먼트의 높이보다 큰 높이를 갖는 유닛 세그먼트(US)를 독립 세그먼트의 높이를 기준으로 하여 분할하고, 분할된 유닛 세그먼트를 제1 세그먼트 집합에 포함시킬 수 있다. 도 5는 독립 세그먼트의 높이보다 더 큰 높이를 갖는 유닛 세그먼트를 나타내는 도면이다. 도 5를 참조하면, 하나의 유닛 세그먼트(US) 내에 복수 개의 문자가 포함될 수 있다. 제1 세그먼트 집합 형성부(124)는 제1 세그먼트 집합 형성 조건에 해당하지 않는 유닛 세그먼트(US)들의 높이를 구하고, 도 5에 도시된 것과 같이 두 개 이상의 문자가 포함된 유닛 세그먼트(US)를 검출하며, 상기 유닛 세그먼트(US)를 독립 세그먼트의 높이(h0)를 기준으로 하여 분할할 수 있다. 도 5에 도시된 유닛 세그먼트(US)의 높이(h)가 독립 세그먼트의 높이(h0)의 4배인 경우, 제1 세그먼트 집합 형성부(124)는 상기 유닛 세그먼트(US)를 독립 세그먼트의 높이를 기준으로 분할하며, 분할된 4개의 유닛 세그먼트(US)를 제1 세그먼트 집합에 포함시킬 수 있다.
세그먼트 병합부(125)는 제1 세그먼트 집합 내의 유닛 세그먼트(US)들이 서로 겹치는지 여부에 대해 판별하며, 서로 겹치는 유닛 세그먼트(US)들을 병합하여 하나의 유닛 세그먼트(US)로 형성할 수 있다. 세그먼트 병합부(125)는 유닛 세그먼트(US)의 위치 정보를 이용하여 이들이 서로 겹치는지 여부를 판별할 수 있다.
세그먼트 병합부(125)는 서로 겹치는 것으로 판별된 유닛 세그먼트(US)들에 대해 그들 각각의 넓이와 그들이 겹쳐지는 부분의 넓이를 구할 수 있다.
상기 겹치는 면적이 서로 겹치는 유닛 세그먼트(US)들 각각의 면적의 제1 소정의 비율 이상인 경우, 또는 서로 겹치는 유닛 세그먼트(US)들이 합쳐진 면적에 대한 유닛 세그먼트(US)들 각각의 면적 비율이 제2 소정의 비율 이상인 경우, 서로 겹치는 유닛 세그먼트(US)들을 병합하여 하나의 유닛 세그먼트로 지정할 수 있다.상기 제1 소정의 비율은 10%이며, 상기 제2 소정의 비율은 95%일 수 있다.
도 6은 서로 겹치는 유닛 세그먼트들을 나타내는 도면이다. 도 6을 참조하면, 유닛 세그먼트(US2)는 유닛 세그먼트(US1) 내에 포함되므로 이들 두 유닛 세그먼트(US1, US2)는 서로 겹친다고 볼 수 있다. 유닛 세그먼트(US1)와 유닛 세그먼트(US2)가 서로 겹친 면적은 유닛 세그먼트(US2)의 면적과 동일하며, 유닛 세그먼트(US1)와 유닛 세그먼트(US2)의 합친 면적은 유닛 세그먼트(US1)의 면적과 동일하다. 유닛 세그먼트(US1)의 면적은 이들 두 유닛 세그먼트(US1, US2)가 합쳐진 면적과 동일하므로 서로 겹치는 유닛 세그먼트들(US1, US2)을 합친 면적에 대한 유닛 세그먼트(US)들 각각의 면적 비율이 95% 이상인 조건을 만족하므로 세그먼트 병합부(125)는 상기 두 유닛 세그먼트(US1, US2)를 병합할 수 있다.
도 7은 여러 개의 유닛 세그먼트들로 이루어진 문자를 나타내는 도면이다. 도 7에서와 같이, 유닛 세그먼트(US)들이 서로 겹치지 않는 경우에는 세그먼트 병합부(125)는 이들 유닛 세그먼트(US)들을 병합하지 않는다.
후보 문장 부호 추출부(130)는 제1 세그먼트 집합에 속하는 유닛 세그먼트(US)들을 검색하여 문장 부호가 될 수 있는 유닛 세그먼트를 검출하고, 검출된 유닛 세그먼트(US)들을 후보 문장 부호 세그먼트로 지정할 수 있다. 후보 문장 부호 추출부(130)는 후보 문장 부호 세그먼트들을 보아 후보 문장 부호 세그먼트 집합을 형성할 수 있다.
후보 문장 부호 추출부(130)는 상기 제1 세그먼트 집합에 속하는 상기 유닛 세그먼트들 각각의 면적을 구하고, 최대 빈도를 갖는 유닛 세그먼트의 면적의 25% 이하의 면적을 갖는 유닛 세그먼트를 상기 후보 문장 후보 세그먼트로 지정할 수 있다.
문자행 세그먼트화부(140)는 상기 유닛 세그먼트들 중 상기 후보 문장 부호 세그먼트를 제외한 상기 유닛 세그먼트들 중 상기 고문서의 읽기 방향인 제1 방향(Y)과 동일한 행렬에 대응되는 유닛 세그먼트들을 검출하고, 상기 동일한 행렬에 포함되는 유닛 세그먼트들이 포함되도록 하는 문자행 세그먼트를 형성할 수 있다.
문자행 세그먼트화부(140)는 일 예로서 제2 세그먼트 집합 형성부(141), 행 세그먼트 형성부(142), 및 문자행 세그먼트 형성부(143)를 포함할 수 있다.
제2 세그먼트 집합 형성부(141)는 제1 세그먼트 집합에 속하는 유닛 세그먼트(US)들 중 그 폭이 독립 세그먼트의 폭의 120% 이하이고 그 높이가 상기 독립 세그먼트의 높이의 40% 이상인 유닛 세그먼트들을 선별하여 제2 세그먼트 집합을 형성할 수 있다.
유닛 세그먼트(US)들 중 그 폭이 독립 세그먼트의 폭의 120% 보다 크고 그 높이가 상기 독립 세그먼트의 높이의 40% 미만인 유닛 세그먼트들은 지나치게 크거나 작은 유닛 세그먼트(US)들이다. 상기 범위에 속하는 유닛 세그먼트(US)는 일반적인 크기에서 벗어난 것으로서 행 분리를 하는데 노이즈 역할을 할 수 있다. 이와 같이 일반적이지 않은 유닛 세그먼트(US)들을 제외하고 행 분리 용이하게 이루어질 수 있다.
행 세그먼트 형성부(142)는 제2 세그먼트 집합 중 첫 번째 유닛 세그먼트를 포함하는 행 세그먼트를 형성할 수 있다. 행 세그먼트 형성부(142)는 제2 세그먼트 집합에 속하는 유닛 세그먼트들 중 위치상 좌측 최상단에 위치하는 첫 번째 유닛 세그먼트로 선정하고 상기 첫 번째 유닛 세그먼트(US)를 포함하는 행 세그먼트를 형성할 수 있다. 행 세그먼트는 고문서의 읽기 방향인 제1 방향(Y)을 따라 연장되어 형성될 수 있다.
본 발명의 다른 예로서 행 세그먼트 형성부(142)는 제2 세그먼트 집합에 속하는 유닛 세그먼트들 중 위치상 우측 최상단에 위치하는 유닛 세그먼트를 첫 번째 유닛 세그먼트로 선정하고 상기 우측 최상단에 위치하는 유닛 세그먼트를 포함하는 행 세그먼트를 형성할 수 있다.
행 세그먼트 형성부(142)는 상기 행 세그먼트와 제2 세그먼트 집합에 속하는 두 번째 유닛 세그먼트 사이의 제1 방향에서의 거리를 구하고, 상기 거리가 소정의 값보다 작은 경우에는 상기 두 번째 유닛 세그먼트를 상기 행 세그먼트에 포함시켜 제1 방향으로 상기 행 세그먼트를 확장시킬 수 있다. 이와 반대로 상기 행 세그먼트와 두 번째 유닛 세그먼트 사이의 거리가 소정의 값보다 큰 경우 상기 두 번째 유닛 세그먼트를 시작으로 하는 새로운 행 세그먼트를 형성할 수 있다.
행 세그먼트와 유닛 세그먼트 사이의 거리는 유닛 세그먼트들의 위치 정보를 이용하여 구할 수 있다. 즉 유닛 세그먼트는 고문서의 이미지 상에서 위치를 나타내는 좌표를 가지고 있다. 도 8 및 9는 행 세그먼트의 생성을 나타내는 도면이다. 도 8을 참조하면, 행 세그먼트 형성부(142)는 행 세그먼트(RS)의 경우 그에 속하는 마지막 유닛 세그먼트의 좌표를 이용하여 다른 유닛 세그먼트(US)와의 거리(d)를 구할 수 있다. 상기 거리(d)는 행 세그먼트(RS)의 마지막에 위치하는 유닛 세그먼트의 하단부와 제2 세그먼트 집합 내의 다른 유닛 세그먼트(US)의 수직 거리이다.
일 예로서, 행 세그먼트 형성부(142)는 상기 제2 세그먼트 집합에 속하는 상기 유닛 세그먼트와 상기 행 세그먼트 사이의 거리가, 상기 독립 세그먼트의 높이의 2.67배 이하인 경우 상기 유닛 세그먼트가 포함되도록 상기 행 세그먼트를 확장시키며, 상기 제2 세그먼트 집합에 속하는 상기 유닛 세그먼트와 상기 행 세그먼트 사이의 거리가, 상기 독립 세그먼트의 높이의 2.67배를 초과하는 경우 상기 유닛 세그먼트가 위치하는 지점을 시작으로 상기 유닛 세그먼트를 포함하는 새로운 행 세그먼트를 형성할 수 있다.
도 9를 참조하면, 행 세그먼트(RS1)의 최하변과 유닛 세그먼트(US')의 최상변 사이의 거리(d)가 독립 세그먼트의 높이의 2.6배를 초과하는바 행 세그먼트 형성부(142)는 유닛 세그먼트(US')를 행 세그먼트(RS1)에 포함시키지 않고, 유닛 세그먼트(US')를 포함하는 새로운 행 세그먼트(RS2)를 형성한다.
행 세그먼트 형성부(142)는 또한 상기 제2 세그먼트 집합에 속하는 상기 유닛 세그먼트와 상기 행 세그먼트가 상기 제1 방향에서 서로 중첩되는지 여부를 판별할 수 있다. 행 세그먼트 형성부(142)는 상기 행 세그먼트와 상기 유닛 세그먼트를 합한 제1 방향에서의 폭이 상기 독립 세그먼트의 폭의 1.2배 이하인 경우 상기 유닛 세그먼트가 포함되도록 상기 행 세그먼트를 확장시키며, 상기 행 세그먼트와 상기 유닛 세그먼트를 합한 제1 방향에서의 폭이 상기 독립 세그먼트의 폭의 1.2배를 초과하는 경우 상기 유닛 세그먼트가 위치하는 지점을 시작으로 상기 유닛 세그먼트를 포함하는 새로운 행 세그먼트를 형성할 수 있다.
문자행 세그먼트 형성부(143)는 행 세그먼트 형성부(142)에 의해 형성된 상기 행 세그먼트들을 분석하여 이들을 합치거나 제거하거나 분할하여 문자행 세그먼트를 생성할 수 있다.
즉 문자행 세그먼트 형성부(143)는 동일한 상기 제1 방향에 위치하는 상기 행 세그먼트들의 상기 제1 방향에서의 중첩 정도에 따라 상기 행 세그먼트들을 병합하여 상기 문자행 세그먼트를 형성하며, 상기 행 세그먼트의 폭과 상기 독립 세그먼트의 폭을 비교하여 소정의 비율 이상으로 상기 행 세그먼트의 폭이 큰 경우 상기 행 세그먼트를 분할하여 상기 문자행 세그먼트를 형성할 수 있다.
도 10 내지 13은 문자행 세그먼트의 생성을 나타내는 도면이다.
도 10을 참조하면, 문자행 세그먼트 형성부(143)는 상기 행 세그먼트 형성부에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트(RS1)와, 상기 행 세그먼트(RS1)와 동일한 상기 제1 방향으로 그 아래 위치하는 다른 행 세그먼트(RS2) 사이의 상기 제1 방향에서의 중첩되는 정도를 판별하며, 상기 하나의 행 세그먼트(RS1)와 상기 다른 행 세그먼트(RS2) 사이의 상기 제1 방향으로의 중첩되는 폭(wi)이 상기 독립 세그먼트의 폭의 1.44배 미만인 경우, 상기 하나의 행 세그먼트(RS1)와 상기 다른 행 세그먼트(RS2)를 병합하여 상기 문자행 세그먼트(CS)를 형성할 수 있다.
문자행 세그먼트 형성부(143)는 상기 하나의 행 세그먼트의 면적이 상기 하나의 행 세그먼트(RS1)와 상기 다른 행 세그먼트(RS2)가 상기 제1 방향(Y)으로 중첩되는 부분의 면적보다 작은 경우, 또는 상기 다른 행 세그먼트의 면적이 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트가 상기 제1 방향으로 중첩되는 부분의 면적보다 작은 경우, 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트를 병합하여 상기 문자행 세그먼트를 형성할 수 있다.
문자행 세그먼트 형성부(143)는 행 세그먼트 형성부(142)에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트(RS1)와, 상기 하나의 행 세그먼트(RS1)와 상기 제1 방향(Y)으로 그 아래 위치하는 다른 행 세그먼트(RS2) 사이의 제1 방향(Y)에서의 중첩되는 정도를 판별하며, 상기 다른 행 세그먼트의 높이가 상기 독립 세그먼트의 높이의 1.33배를 초과하는 경우, 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트 사이의 상기 제1 방향으로의 중첩되는 폭이 상기 독립 세그먼트의 폭의 1.44배 미만인 경우, 상기 하나의 행 세그먼트의 폭이 상기 다른 행 세그먼트의 폭의 0.5배 이상인 경우, 및 상기 다른 행 세그먼트의 폭이 상기 다른 행 세그먼트의 폭의 0.5배 이상인 경우 중 중 어느 하나에 해당하면, 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트를 병합하여 상기 문자행 세그먼트를 형성할 수 있다.
문자행 세그먼트 형성부(143)는 상기 행 세그먼트의 높이가 상기 독립 세그먼트의 높이의 0.22배 미만이거나, 상기 행 세그먼트의 폭이 상기 독립 세그먼트의 폭의 0.4배 미만인 경우 상기 행 세그먼트를 삭제할 수 있다. 이는 높이나 폭이 아주 작은 것으로 문자행을 이루기에는 부적절한 것으로 보아 행 세그먼트 집합에서 제외한다.
도 11을 참조하면, 문자행 세그먼트 형성부(143)는 행 세그먼트 형성부(142)에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트(RS1)가 상기 읽기 방향으로 적어도 2개의 다른 행 세그먼트(RS2, RS3)와 중첩되는 경우, 상기 하나의 행 세그먼트(RS1)가 상기 적어도 2개의 다른 행 세그먼트(RS2, RS3)와 중첩되는 면적(Sl, Sr)이 상기 하나의 행 세그먼트의 면적(S)의 0.8배를 초과할 때 상기 하나의 행 세그먼트(RS1)를 삭제할 수 있다. 어느 하나의 행 세그먼트(RS1)가 서로 다른 행에 속하는 두 개의 행 세그먼트(RS2, RS3)와 제1 방향에서 중첩되고, 그 중첩되는 면적이 어느 하나의 행 세그먼트(RS1)의 면적의 80%를 초과하는 경우, 상기 행 세그먼트(RS1)는 행이 다른 두 개의 행 세그먼트(RS2, RS3) 사이에 존재할 가능성이 높으며, 상기 두 개의 행 세그먼트(RS2, RS3) 중 어디에 속하는지 판별하는 것이 곤란하다. 따라서 문자행 세그먼트 형성부(143)는 상기 행 세그먼트(RS1)를 제외함으로써 문자행 세그먼트의 직선성을 높일 수 있다.
도 12를 참조하면, 문자행 세그먼트 형성부(143)는 하나의 행 세그먼트(RS1)와, 동일한 제1 방향(Y) 상에 위치하는 다른 행 세그먼트(RS2)가 중첩되는 폭(wi)이 상기 하나의 행 세그먼트(RS1) 또는 상기 다른 행 세그먼트(RS2)의 폭의 0.4배를 초과하는 경우 상기 하나의 행 세그먼트(RS1)와 상기 다른 행 세그먼트(RS2)를 병합하여 하나의 문자행 세그먼트(CS)를 형성할 수 있다. 이는 기울어짐에 의해 제1 방향으로의 하나의 행이 위아래로 갈라진 것으로 보고 이들을 서로 합치는 것이다.
도 13을 참조하면, 문자행 세그먼트 형성부(143)는 상기 행 세그먼트 형성부(142)에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트(RS1)의 폭이 독립 세그먼트의 폭의 1.5배 이상인 경우, 상기 하나의 행 세그먼트(RS1)를 n개로 분할할 수 있다. 상기 n은 w/(1.5w0)이고, 여기서 상기 w는 상기 행 세그먼트(RS1)의 폭이고, 상기 w0은 상기 독립 세그먼트의 폭일 수 있다. 하나의 행 세그먼트(RS1)의 폭이 독립 세그먼트의 폭의 1.5배 이상인 경우는 도 13에 도시된 바와 같이 두 개의 서로 다른 행에 위치하는 행 세그먼트(RS2, RS3)에 대응될 수 있으며, 이는 상기 하나의 행 세그먼트(RS1)가 행 단위로 분할되지 않은 것이다. 따라서 문자행 세그먼트 형성부(143)는 이를 좌우로 분할하여 행 세그먼트(RS2)에 대응되는 행 세그먼트는 행 세그먼트(RS2)와 병합하여 문자행 세그먼트(CS1)를 형성하며, 다른 행 세그먼트(RS3)에 대응되는 행 세그먼트는 다른 행 세그먼트(RS3)에 병합하여 다른 문자행 세그먼트(CS2)를 형성할 수 있다.
문자행 세그먼트 형성부(143)는 또한 행 세그먼트 형성부(142)에 의해 형성된 행 세그먼트들이 서로 겹치는지 여부를 판별하며, 서로 겹치는 행 세그먼트들의 겹치는 면적이 각각의 행 세그먼트의 면적의 65%를 초과하는 경우, 상기 서로 겹치는 행 세그먼트들을 병합하여 하나의 문자행 세그먼트를 형성할 수 있다.
문자 세그먼트화부(150)는 상기 유닛 세그먼트들을 상기 문자행 세그먼트 별로 분류하고, 상기 문자행 세그먼트 내의 상기 유닛 세그먼트들을 병합하여 문자 세그먼트를 형성할 수 있다.
즉, 문자 세그먼트화부(150)는 제1 세그먼트 집합 형성부(124) 또는 제2 세그먼트 집합 형성부(141)에 의해 제외된 유닛 세그먼트들을 상기 유닛 세그먼트의 위치에 대응되는 상기 문자행 세그먼트에 포함시킬 수 있다. 제1 세그먼트 집합 형성부(124) 또는 제2 세그먼트 집합 형성부(141)에 의해 제외된 유닛 세그먼트들은, 도 6에 도시된 바와 같이, 한 문자임에도 획이 서로 분리되어 매우 작은 유닛 세그먼트들일 수 있다.
문자 세그먼트화부(150)는 상기 제외된 유닛 세그먼트들까지 포함된 문자행 세그먼트 내에서 제1 방향(읽기 방향)에 수직한 제2 방향으로 배열되는 상기 유닛 세그먼트들을 병합할 수 있다. 또한 문자 세그먼트화부(150)는 상기 문자행 세그먼트 내에서 상기 제1 방향으로 배열되는 상기 유닛 세그먼트들에 대해 서로 병합한 유닛 세그먼트의 높이와 폭이 상기 독립 세그먼트의 높이 및 폭을 초과하지 않는 경우 이들을 병합하여 상기 문자 세그먼트를 형성하며, 상기 독립 세그먼트의 높이 및 폭을 초과하는 경우 병합하지 않을 수 있다.
이 경우, 문자 세그먼트화부(150)는 상기 유닛 세그먼트가 상기 제1 방향에서 상기 유닛 세그먼트 위와 아래에 배치되는 유닛 세그먼트들과 병합이 가능한 경우, 상기 유닛 세그먼트와 거리가 가까운 유닛 세그먼트와 병합하여 상기 문자 세그먼트를 형성할 수 있다.
도 14는 소자쌍행 세그먼트를 포함한 이미지를 나타내는 도면이다.
소자쌍행 세그먼트화부(160)는 행 세그먼트 형성부(142)에 의해 형성된 행 세그먼트들 각각에 대해 상기 제1 방향(Y)에 수직인 제2 방향(X)으로 적어도 2개의 상기 유닛 세그먼트들이 배열되는 영역을 소자쌍행구역(ST)으로 지정하고, 상기 소자쌍행구역 내의 화소 군집체를 포함하는 영역을 소자쌍행 세그먼트로 설정할 수 있다.
소자쌍행 세그먼트화부(160)는 일 예로서 소자쌍행 검출부(161), 소자쌍행 구성부(162), 및 소자쌍행 세그먼트 형성부(163)를 포함할 수 있다.
소자쌍행 검출부(161)는 상기 행 세그먼트 내의 상기 유닛 세그먼트들에 대해 상기 제1 방향으로 중심부분에서의 화소농도를 구하고, 상기 화소농도가 소정의 값보다 작은 상기 유닛 세그먼트들을 검출할 수 있다. 소자쌍행은 한 행에 두 글자를 기재하는 형태이다. 상기 두 글자 사이에는 간격이 있는바, 상기 간격에서의 화소 농도가 글자가 있는 영역에 비해 낮을 수밖에 없다. 이에 따라 소자쌍행 검출부(161)는 소자쌍행에서 두 글자의 간격에 해당하는 제1 방향으로의 중심부분에서의 화소 농도를 구하고, 화소 농도를 비교함으로써 소자쌍행인지 여부를 판별할 수 있다.
소자쌍행 구성부(162)는 소자쌍행 검출부(161)에 의해 검출된 상기 유닛 세그먼트들을 병합하여 소자쌍행구역을 구성할 수 있다.
소자쌍행 세그먼트 형성부(163)는 상기 소자쌍행구역의 수평히스토그램을 구하고 상기 수평히스토그램 값이 가장 작은 부분을 중심으로 좌우로 분리하여 각각을 소자쌍행 세그먼트로 설정할 수 있다.
세그먼트 통합부(170)는 상기 소자쌍행 세그먼트, 상기 문자 세그먼트, 및 후보 문장 부호 세그먼트들을 통합하고 상기 읽기 방향에 따라 정렬시킬 수 있다. 세그먼트 통합부(170)는 상기 유닛 세그먼트들을 상기 문자행 세그먼트 별로 분류하고, 상기 문자행 세그먼트 내의 상기 유닛 세그먼트들을 다시 한 번 병합할 수 있다.
문장 부호 추출부(180)는 상기 문자 세그먼트들, 상기 소자쌍행 세그먼트들, 및 상기 후보 문장 부호 세그먼트들 중 상기 문자 세그먼트들의 평균 크기의 1/3보다 작은 것을 문장 부호 세그먼트로 지정할 수 있다.
후보 문장 부호 추출부(130)에서 후보 문장 부호를 추출하였으나, 문자 각각이 세그먼트화되기 전에 이루어진 것으로서 하나의 문자를 포함하는 세그먼트의 크기가 정해지지 않은 상태에서 대략적인 크기를 기준으로 문장 부호를 추출하였으므로 문장 부호와 유사한 문자획들도 문장부호로 잘못 판정되는 경우가 발생할 수 있다.
문장 부호 추출부(180)는 문자 세그먼트들의 평균크기를 구하고, 상기 평균크기의 1/3보다 작은 것을 문장 부호 세그먼트로 지정할 수 있다. 문장 부호 추출부(180)는 문장부호로 판정된 세그먼트들 앞에 위치하는 세그먼트들에는 마크업처리를 할 수 있다.
상술한 바와 같이 본 발명의 일 실시예에 따른 문자 추출 시스템은 필기체로 작성된 고문서를 디지털화하고, 디지털화된 고문서를 유닛 세그먼트로 나누고 유닛 세그먼트들 중 독립 세그먼트를 지정하여 문자행 세그먼트와 문자 세그먼트를 설정함으로써 필기체로 작성된 고문서에서 한자 인식률을 크게 향상시킬 수 있다.
도 15는 본 발명의 일 실시예에 따르는 고문서의 이미지 데이터에서의 문자 추출 방법을 나타내는 순서도이다.
도 15를 참조하면, 본 발명의 일 실시예에 따르는 고문서의 이미지 데이터에서의 문자 추출 방법은, 우선 고문서를 이미지 데이터로 변환한다(S101). 상기 이미지 데이터에서 동일한 화소값을 갖는 화소들이 서로 인접하여 모여 있는 화소 군집체를 검출하며, 상기 화소 군집체를 포함하는 영역을 유닛 세그먼트로 형성하고(S102), 유닛 세그먼트들 중 독립 세그먼트로 지정한다(S103). 상기 유닛 세그먼트들이 서로 겹치지는 여부를 판별하고 겹치지는 정도에 따라 상기 유닛 세그먼트들의 병합여부를 결정할 수 있다(S104).
다음으로, 상기 유닛 세그먼트들 검색하여 문장 부호를 검출하여 문장 부호에 대응되는 상기 유닛 세그먼트를 후보 문장 부호 세그먼트로 지정할 수 있다(S105).
이어서, 상기 유닛 세그먼트들 중 상기 후보 문장 부호 세그먼트를 제외한 상기 유닛 세그먼트들 중 상기 고문서의 읽기 방향인 제1 방향과 동일한 행렬에 대응되는 상기 유닛 세그먼트들을 검출하고, 상기 동일한 행렬에 포함되는 상기 유닛 세그먼트들이 포함되도록 하는 문자행 세그먼트를 형성할 수 있다(S106).
다음으로, 상기 유닛 세그먼트들을 상기 문자행 세그먼트 별로 분류하고, 상기 문자행 세그먼트 내의 상기 유닛 세그먼트들을 병합하여 문자 세그먼트를 형성할 수 있다(S107).
이어서, 소자쌍행이 존재하는 여부를 검출(S108)하고, 소자쌍행이 존재하는 경우, 소자쌍행 세그먼트를 형성하고(S108), 소자쌍행 세그먼트와 비소자쌍행 세그먼트를 통합한다(S109).
다음으로, 상기 유닛 세그먼트, 상기 후보 문장 부호 세그먼트, 및/또는 상기 문자 세그먼트에서 상기 문장 부호를 포함하는 세그먼트를 추출할 수 있다(S110).
이상의 상세한 설명은 본 발명을 예시하고 설명하는 것이다. 또한, 전술한 내용은 본 발명의 바람직한 실시 형태를 나타내고 설명하는 것에 불과하며, 전술한 바와 같이 본 발명은 다양한 다른 조합, 변경 및 환경에서 사용할 수 있으며, 본 명세서에 개시된 발명의 개념의 범위, 저술한 개시 내용과 균등한 범위 및/또는 당업계의 기술 또는 지식의 범위 내에서 변경 또는 수정이 가능하다. 따라서 이상의 발명의 상세한 설명은 개시된 실시 상태로 본 발명을 제한하려는 의도가 아니다. 또한, 첨부된 청구범위는 다른 실시 상태도 포함하는 것으로 해석되어야 한다.
100: 문자 추출 시스템 110: 변환부
120: 세그먼트화부 130: 후보 문장 부호 추출부
140: 문자행 세그먼트화부 150: 문자 세그먼트화부
160: 소자쌍행 세그먼트화부 170: 세그먼트 병합부
180: 문장 부호 추출부

Claims (24)

  1. 고문서의 이미지 데이터에서의 문자 추출 시스템에 있어서,
    상기 이미지 데이터에서 동일한 화소값을 갖는 화소들이 서로 인접하여 모여 있는 화소 군집체를 검출하며, 상기 화소 군집체를 포함하는 영역을 유닛 세그먼트로 지정하고, 상기 유닛 세그먼트들이 서로 겹치지는 여부를 판별하고 겹치지는 정도에 따라 상기 유닛 세그먼트들의 병합여부를 결정하는 세그먼트화부;
    상기 유닛 세그먼트들 검색하여 문장 부호를 검출하여 상기 문장 부호에 대응되는 상기 유닛 세그먼트를 후보 문장 부호 세그먼트로 지정하는 후보 문장 부호 추출부;
    상기 유닛 세그먼트들 중 상기 후보 문장 부호 세그먼트를 제외한 상기 유닛 세그먼트들 중 상기 고문서의 읽기 방향인 제1 방향과 동일한 행렬에 대응되는 상기 유닛 세그먼트들을 검출하고, 상기 동일한 행렬에 포함되는 상기 유닛 세그먼트들이 포함되도록 하는 문자행 세그먼트를 형성하는 문자행 세그먼트화부;
    상기 유닛 세그먼트들을 상기 문자행 세그먼트 별로 분류하고, 상기 문자행 세그먼트 내의 상기 유닛 세그먼트들을 병합하여 문자 세그먼트를 형성하는 문자 세그먼트화부; 및
    상기 유닛 세그먼트, 상기 후보 문장 부호 세그먼트, 및/또는 상기 문자 세그먼트에서 상기 문장 부호를 포함하는 세그먼트를 추출하는 문장 부호 추출부; 를 구비하는 문자 추출 시스템.
  2. 제1항에 있어서,
    상기 이미지 데이터가 바이너리 이미지(binary image)인지 여부를 판별하고, 바이너리 이미지가 아닌 경우 바이너리 이미지로 변환하는 변환부를 더 구비하는 문자 추출 시스템.
  3. 제2항에 있어서,
    상기 세그먼트화부는,
    상기 이미지 데이터에서 상기 화소 군집체를 검출하는 화소 검출부;
    상기 화소 군집체를 포함하도록 상기 화소 군집체에 외접하는 사각형 영역을 상기 유닛 세그먼트로 설정하는 유닛 세그먼트 형성부;
    서로 겹치지지 않으면서 가로변과 세로변의 길이의 비가 1.3배 이하인 상기 유닛 세그먼트들 중 넓이가 가장 큰 유닛 세그먼트를 독립 세그먼트로 설정하는 독립 세그먼트 설정부;
    상기 유닛 세그먼트들의 평균 넓이와 평균 높이를 구하고, 그 넓이가 상기 평균 넓이의 1/3보다 크고 상기 평균 넓이의 1.5배보다 작으며, 그 높이가 상기 평균 높이의 1/3보다 크고 상기 평균 높이의 1.5배보다 작은 유닛 세그먼트들을 모아 제1 세그먼트 집합을 형성하는 제1 세그먼트 집합 형성부; 및
    서로 인접한 상기 유닛 세그먼트들이 서로 겹치지는 여부를 판별하며, 이웃하는 상기 유닛 세그먼트들과 서로 겹치는 유닛 세그먼트들을 병합하여 하나의 유닛 세그먼트를 형성하는 세그먼트 병합부; 를 포함하며,
    상기 화소 군집체는 상, 하, 좌, 우, 대각선 방향으로 서로 인접한 화소들이 0이 아니 동일한 화소값을 갖는 문자 추출 시스템.
  4. 제3항에 있어서,
    상기 제1 세그먼트 집합 형성부는 그 폭이 상기 독립 세그먼트의 폭의 1/10보다 작거나, 상기 유닛 세그먼트의 가로변 또는 세로변이 5픽셀 이하에 해당하는 상기 유닛 세그먼트를 제외한 나머지 상기 유닛 세그먼트들을 상기 제1 세그먼트 집합으로 지정하며,
    상기 제1 세그먼트 집합 형성부는 상기 독립 세그먼트의 높이보다 큰 높이를 갖는 상기 유닛 세그먼트를 상기 독립 세그먼트의 높이를 기준으로 하여 분할하고, 분할된 유닛 세그먼트를 상기 제1 세그먼트 집합에 추가하는 문자 추출 시스템.
  5. 제3항에 있어서,
    상기 세그먼트 병합부는,
    상기 제1 세그먼트 집합 내의 서로 인접한 상기 유닛 세그먼트들이 겹치는지 여부를 판별하고, 서로 겹치는 상기 유닛 세그먼트들의 겹치는 면적을 구하며,
    상기 겹치는 면적이 서로 겹치는 상기 유닛 세그먼트들 각각의 면적의 제1 소정의 비율 이상인 경우, 또는 서로 겹치는 상기 유닛 세그먼트들이 합쳐진 면적에 대한 상기 유닛 세그먼트들 각각의 면적 비율이 제2 소정의 비율 이상인 경우, 서로 겹치는 상기 유닛 세그먼트들을 병합하여 하나의 유닛 세그먼트로 지정하는 문자 추출 시스템.
  6. 제5항에 있어서,
    상기 제1 소정의 비율은 10%이며, 상기 제2 소정의 비율은 95%인 문자 추출 시스템.
  7. 제3항에 있어서,
    상기 후보 문장 부호 추출부는 상기 제1 세그먼트 집합에 속하는 상기 유닛 세그먼트들 각각의 면적을 구하고, 최대 빈도를 갖는 유닛 세그먼트의 면적의 25% 이하의 면적을 갖는 유닛 세그먼트를 상기 후보 문장 후보 세그먼트로 지정하는 문자 추출 시스템.
  8. 제3항에 있어서,
    상기 문자행 세그먼트화는,
    상기 제1 세그먼트 집합에 속하는 상기 유닛 세그먼트들 중 그 폭이 상기 독립 세그먼트의 폭의 120% 이하이고 그 높이가 상기 독립 세그먼트의 높이의 40% 이상인 유닛 세그먼트들을 선별하여 제2 세그먼트 집합을 형성하는 제2 세그먼트 집합 형성부;
    상기 제2 세그먼트 집합 중 첫 번째 유닛 세그먼트를 포함하는 행 세그먼트를 형성하며, 상기 행 세그먼트와 두 번째 유닛 세그먼트 사이의 상기 제1 방향에서의 거리를 비교하여 소정의 값보다 작은 경우 상기 두 번째 유닛 세그먼트가 상기 행 세그먼트에 포함되도록 상기 행 세그먼트를 확장시키며, 소정의 값보다 큰 경우 상기 두 번째 유닛 세그먼트를 시작으로 하는 새로운 행 세그먼트를 형성하는 행 세그먼트 형성부; 및
    동일한 상기 제1 방향에 위치하는 상기 행 세그먼트들의 상기 제1 방향에서의 중첩 정도에 따라 상기 행 세그먼트들을 병합하여 상기 문자행 세그먼트를 형성하며, 상기 행 세그먼트의 폭과 상기 독립 세그먼트의 폭을 비교하여 소정의 비율 이상으로 상기 행 세그먼트의 폭이 큰 경우 상기 행 세그먼트를 분할하여 상기 문자행 세그먼트를 형성하는 문자행 세그먼트 형성부; 를 포함하는 문자 추출 시스템.
  9. 제8항에 있어서,
    상기 행 세그먼트 형성부는,
    상기 제2 세그먼트 집합에 속하는 상기 유닛 세그먼트와 상기 행 세그먼트 사이의 거리가, 상기 독립 세그먼트의 높이의 2.67배 이하인 경우 상기 유닛 세그먼트가 포함되도록 상기 행 세그먼트를 확장시키며,
    상기 제2 세그먼트 집합에 속하는 상기 유닛 세그먼트와 상기 행 세그먼트 사이의 거리가, 상기 독립 세그먼트의 높이의 2.67배를 초과하는 경우 상기 유닛 세그먼트가 위치하는 지점을 시작으로 상기 유닛 세그먼트를 포함하는 새로운 행 세그먼트를 형성하는 문자 추출 시스템.
  10. 제8항에 있어서,
    상기 행 세그먼트 형성부는,
    상기 제2 세그먼트 집합에 속하는 상기 유닛 세그먼트와 상기 행 세그먼트가 상기 제1 방향에서 서로 중첩되는지 여부를 판별하고,
    중첩된 부분을 포함한 상기 행 세그먼트와 상기 유닛 세그먼트 사이의 폭이 상기 독립 세그먼트의 폭의 1.2배 이하인 경우 상기 유닛 세그먼트가 포함되도록 상기 행 세그먼트를 확장시키며,
    중첩된 부분을 포함한 상기 행 세그먼트와 상기 유닛 세그먼트 사이의 폭이 상기 독립 세그먼트의 폭의 1.2배를 초과하는 경우 상기 유닛 세그먼트가 위치하는 지점을 시작으로 상기 유닛 세그먼트를 포함하는 새로운 행 세그먼트를 형성하는 문자 추출 시스템.
  11. 제8항에 있어서,
    상기 문자행 세그먼트 형성부는,
    상기 행 세그먼트 형성부에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트와, 상기 행 세그먼트와 동일한 상기 제1 방향으로 그 아래 위치하는 다른 행 세그먼트 사이의 상기 제1 방향에서의 중첩되는 정도를 판별하며,
    상기 하나의 행 세그먼트와 상기 다른 행 세그먼트 사이의 상기 제1 방향으로의 중첩되는 폭이 상기 독립 세그먼트의 폭의 1.44배 미만인 경우, 또는 상기 하나의 행 세그먼트의 면적이 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트가 상기 제1 방향으로 중첩되는 부분의 면적보다 작은 경우, 또는 상기 다른 행 세그먼트의 면적이 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트가 상기 제1 방향으로 중첩되는 부분의 면적보다 작은 경우, 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트를 병합하여 상기 문자행 세그먼트를 형성하는 문자 추출 시스템.
  12. 제8항에 있어서,
    상기 문자행 세그먼트 형성부는,
    상기 행 세그먼트 형성부에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트와, 상기 하나의 행 세그먼트와 동일한 상기 제1 방향으로 그 아래 위치하는 다른 행 세그먼트 사이의 상기 제1 방향에서의 중첩되는 정도를 판별하며,
    상기 다른 행 세그먼트의 높이가 상기 독립 세그먼트의 높이의 1.33배를 초과하는 경우, 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트 사이의 상기 제1 방향으로의 중첩되는 폭이 상기 독립 세그먼트의 폭의 1.44배 미만인 경우, 상기 하나의 행 세그먼트의 폭이 상기 다른 행 세그먼트의 폭의 0.5배 이상인 경우, 및 상기 다른 행 세그먼트의 폭이 상기 다른 행 세그먼트의 폭의 0.5배 이상인 경우 중 중 어느 하나에 해당하면, 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트를 병합하여 상기 문자행 세그먼트를 형성하는 문자 추출 시스템.
  13. 제8항에 있어서,
    상기 문자행 세그먼트 형성부는,
    상기 행 세그먼트의 높이가 상기 독립 세그먼트의 높이의 0.22배 미만이거나, 상기 행 세그먼트의 폭이 상기 독립 세그먼트의 폭의 0.4배 미만인 경우 상기 행 세그먼트를 삭제하는 문자 추출 시스템.
  14. 제8항에 있어서,
    상기 문자행 세그먼트 형성부는,
    상기 행 세그먼트 형성부에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트가 상기 읽기 방향으로 적어도 2개의 다른 행 세그먼트와 중첩되는 경우, 상기 하나의 행 세그먼트가 상기 적어도 2개의 다른 행 세그먼트와 중첩되는 면적이 상기 하나의 행 세그먼트의 0.8배를 초과할 때 상기 하나의 행 세그먼트를 삭제하는 문자 추출 시스템.
  15. 제8항에 있어서,
    상기 문자행 세그먼트 형성부는,
    상기 행 세그먼트 형성부에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트와, 상기 하나의 행 세그먼트와 동일한 상기 제1 방향으로 그 아래 위치하는 다른 행 세그먼트 사이의 상기 제1 방향에서의 중첩되는 정도를 판별하며,
    상기 하나의 행 세그먼트와 상기 다른 행 세그먼트가 중첩되는 폭이 상기 하나의 행 세그먼트 또는 상기 다른 행 세그먼트의 폭의 0.4배를 초과하는 경우 상기 하나의 행 세그먼트와 상기 다른 행 세그먼트를 병합하여 하나의 문자행 세그먼트를 형성하는 문자 추출 시스템.
  16. 제8항에 있어서,
    상기 문자행 세그먼트 형성부는,
    상기 행 세그먼트 형성부에 의해 형성된 상기 행 세그먼트들 중 하나의 행 세그먼트의 폭이 상기 독립 세그먼트의 폭의 1.5배 이상인 경우, 상기 하나의 행 세그먼트를 n개로 분할하며, 상기 n은 w/(1.5w0)이고, 여기서 상기 w는 상기 행 세그먼트의 폭이고, 상기 w0는 상기 독립 세그먼트의 폭인 문자 추출 시스템.
  17. 제8항에 있어서,
    상기 문자행 세그먼트 형성부는,
    상기 행 세그먼트 형성부에 의해 형성된 상기 행 세그먼트들이 서로 겹치는지 여부를 판별하며, 서로 겹치는 행 세그먼트들의 겹치는 면적이 각각의 행 세그먼트의 면적의 65%를 초과하는 경우, 상기 서로 겹치는 행 세그먼트들을 병합하여 하나의 문자행 세그먼트를 형성하는 문자 추출 시스템.
  18. 제3항에 있어서,
    상기 문자 세그먼트화부는,
    상기 제1 세그먼트 집합 형성부에 의해 제외된 상기 유닛 세그먼트들을 상기 유닛 세그먼트의 위치에 대응되는 상기 문자행 세그먼트에 포함시키며,
    상기 문자행 세그먼트 내에서 상기 읽기 방향에 수직한 제2 방향으로 배열되는 상기 유닛 세그먼트들을 병합하고,
    상기 문자행 세그먼트 내에서 상기 제1 방향으로 배열되는 상기 유닛 세그먼트들에 대해 서로 병합한 유닛 세그먼트의 높이와 폭이 상기 독립 세그먼트의 높이 및 폭을 초과하지 않는 경우 병합하여 상기 문자 세그먼트를 형성하며, 상기 독립 세그먼트의 높이 및 폭을 초과하는 경우 병합하지 않는 문자 추출 시스템.
  19. 제18항에 있어서,
    상기 문자 세그먼트화부는,
    상기 유닛 세그먼트가 상기 제1 방향에서 상기 유닛 세그먼트 위와 아래에 배치되는 유닛 세그먼트들과 병합이 가능한 경우, 상기 유닛 세그먼트와 거리가 가까운 유닛 세그먼트와 병합하여 상기 문자 세그먼트를 형성하는 문자 추출 시스템.
  20. 제8항에 있어서,
    상기 문자 추출 시스템은,
    상기 행 세그먼트 형성부에 의해 형성된 행 세그먼트들 각각에 대해 상기 제1 방향에 수직인 제2 방향으로 적어도 2개의 상기 유닛 세그먼트들이 배열되는 영역을 소자쌍행구역으로 지정하고, 상기 소자쌍행구역 내의 화소 군집체를 포함하는 영역을 소자쌍행 세그먼트로 설정하는 소자쌍행 세그먼트화부; 및
    상기 소자쌍행 세그먼트, 상기 문자 세그먼트, 및 후보 문장 부호 세그먼트들을 통합하고 상기 읽기 방향에 따라 정렬시키는 세그먼트 통합부; 를 더 구비하는 문자 추출 시스템.
  21. 제20항에 있어서,
    상기 소자쌍행 세그먼트화부는,
    상기 행 세그먼트 내의 상기 유닛 세그먼트들에 대해 상기 제1 방향으로 중심부분에서의 화소농도를 구하고, 상기 화소농도가 소정의 값보다 작은 상기 유닛 세그먼트들을 검출하는 소자쌍행 검출부;
    상기 소자쌍행 검출부에 의해 검출된 상기 유닛 세그먼트들을 병합하여 소자쌍행구역을 구성하는 소자쌍행 구성부; 및
    상기 소자쌍행구역의 수평히스토그램을 구하고 상기 수평히스토그램 값이 가장 작은 부분을 중심으로 좌우로 분리하여 각각을 소자쌍행 세그먼트로 설정하는 소자쌍행 세그먼트 형성부; 를 포함하는 문자 추출 시스템.
  22. 제20항에 있어서,
    상기 문장 부호 추출부는,
    상기 문자 세그먼트들, 상기 소자쌍행 세그먼트들, 및 상기 후보 문장 부호 세그먼트들 중 상기 문자 세그먼트들의 평균 크기의 1/3보다 작은 것을 문장 부호 세그먼트로 지정하는 문자 추출 시스템.
  23. 고문서의 이미지 데이터에서의 문자를 추출하는 방법에 있어서,
    상기 이미지 데이터에서 동일한 화소값을 갖는 화소들이 서로 인접하여 모여 있는 화소 군집체를 검출하며, 상기 화소 군집체를 포함하는 영역을 유닛 세그먼트로 지정하고, 상기 유닛 세그먼트들이 서로 겹치지는 여부를 판별하고 겹치지는 정도에 따라 상기 유닛 세그먼트들의 병합여부를 결정하는 단계;
    상기 유닛 세그먼트들 검색하여 문장 부호를 검출하여 상기 문장 부호에 대응되는 상기 유닛 세그먼트를 후보 문장 부호 세그먼트로 지정하는 단계;
    상기 유닛 세그먼트들 중 상기 후보 문장 부호 세그먼트를 제외한 상기 유닛 세그먼트들 중 상기 고문서의 읽기 방향인 제1 방향과 동일한 행렬에 대응되는 상기 유닛 세그먼트들을 검출하고, 상기 동일한 행렬에 포함되는 상기 유닛 세그먼트들이 포함되도록 하는 문자행 세그먼트를 형성하는 단계;
    상기 유닛 세그먼트들을 상기 문자행 세그먼트 별로 분류하고, 상기 문자행 세그먼트 내의 상기 유닛 세그먼트들을 병합하여 문자 세그먼트를 형성하는 단계;
    상기 유닛 세그먼트, 상기 후보 문장 부호 세그먼트, 및/또는 상기 문자 세그먼트에서 상기 문장 부호를 포함하는 세그먼트를 추출하는 단계; 를 구비하는 고문서 이미지 데이터에서의 문자 추출 방법.
  24. 제23항의 방법을 수행하기 위한 일련의 명령어 집합이 기록된 컴퓨터로 판독할 수 있는 기록매체.
KR1020170136423A 2017-10-20 2017-10-20 고문서의 이미지 데이터에서의 문자 추출 시스템 및 이를 이용한 문자 추출 방법 KR101937398B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170136423A KR101937398B1 (ko) 2017-10-20 2017-10-20 고문서의 이미지 데이터에서의 문자 추출 시스템 및 이를 이용한 문자 추출 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170136423A KR101937398B1 (ko) 2017-10-20 2017-10-20 고문서의 이미지 데이터에서의 문자 추출 시스템 및 이를 이용한 문자 추출 방법

Publications (1)

Publication Number Publication Date
KR101937398B1 true KR101937398B1 (ko) 2019-01-10

Family

ID=65020827

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170136423A KR101937398B1 (ko) 2017-10-20 2017-10-20 고문서의 이미지 데이터에서의 문자 추출 시스템 및 이를 이용한 문자 추출 방법

Country Status (1)

Country Link
KR (1) KR101937398B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102430940B1 (ko) 2021-08-23 2022-08-29 장선필 인쇄판 이미지 추출 방법
JP7432041B1 (ja) 2022-08-11 2024-02-15 韓國電子通信研究院 古文献の原文イメージのデジタル化のための電子装置および方法
KR20240038228A (ko) 2022-09-16 2024-03-25 장선필 다색 광원을 이용한 인쇄판 이미지 추출 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100655916B1 (ko) 2004-07-19 2006-12-08 한국과학기술원 방대한 데이터의 디지털화를 위한 문서영상처리 및검증시스템 및 그 방법
JP2014085841A (ja) 2012-10-24 2014-05-12 Glory Ltd 文字切出装置及び文字切出方法並びに文字認識装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100655916B1 (ko) 2004-07-19 2006-12-08 한국과학기술원 방대한 데이터의 디지털화를 위한 문서영상처리 및검증시스템 및 그 방법
JP2014085841A (ja) 2012-10-24 2014-05-12 Glory Ltd 文字切出装置及び文字切出方法並びに文字認識装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102430940B1 (ko) 2021-08-23 2022-08-29 장선필 인쇄판 이미지 추출 방법
JP7432041B1 (ja) 2022-08-11 2024-02-15 韓國電子通信研究院 古文献の原文イメージのデジタル化のための電子装置および方法
KR20240038228A (ko) 2022-09-16 2024-03-25 장선필 다색 광원을 이용한 인쇄판 이미지 추출 방법

Similar Documents

Publication Publication Date Title
CN111814722B (zh) 一种图像中的表格识别方法、装置、电子设备及存储介质
Nikolaou et al. Segmentation of historical machine-printed documents using adaptive run length smoothing and skeleton segmentation paths
Zhou et al. Bangla/English script identification based on analysis of connected component profiles
US8059868B2 (en) License plate recognition apparatus, license plate recognition method, and computer-readable storage medium
Shamilian et al. A retargetable table reader
CN105205488B (zh) 基于Harris角点和笔画宽度的文字区域检测方法
JP5492205B2 (ja) 印刷媒体ページの記事へのセグメント化
KR101937398B1 (ko) 고문서의 이미지 데이터에서의 문자 추출 시스템 및 이를 이용한 문자 추출 방법
CN101122953A (zh) 一种图片文字分割的方法
CN102332096A (zh) 一种视频字幕文本提取和识别的方法
Pal et al. Automatic separation of words in multi-lingual multi-script Indian documents
Harit et al. Table detection in document images using header and trailer patterns
JP3851742B2 (ja) 帳票処理方法及び装置
JP3411472B2 (ja) パターン抽出装置
Valy et al. Line segmentation approach for ancient palm leaf manuscripts using competitive learning algorithm
Boukerma et al. A novel Arabic baseline estimation algorithm based on sub-words treatment
Mullick et al. An efficient line segmentation approach for handwritten Bangla document image
JPH1031716A (ja) 文字行抽出方法および装置
US20060194187A1 (en) Material processing apparatus, material processing method, and program product
JP3268552B2 (ja) 領域抽出方法、宛名領域抽出方法、宛名領域抽出装置、及び画像処理装置
Nguyen et al. Enhanced character segmentation for format-free Japanese text recognition
Jia et al. Grayscale-projection based optimal character segmentation for camera-captured faint text recognition
JP3957471B2 (ja) 分離文字列統合装置
US20030123730A1 (en) Document recognition system and method using vertical line adjacency graphs
JP2005250786A (ja) 画像認識方法

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant