KR20240082614A - 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램 - Google Patents

문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20240082614A
KR20240082614A KR1020220166424A KR20220166424A KR20240082614A KR 20240082614 A KR20240082614 A KR 20240082614A KR 1020220166424 A KR1020220166424 A KR 1020220166424A KR 20220166424 A KR20220166424 A KR 20220166424A KR 20240082614 A KR20240082614 A KR 20240082614A
Authority
KR
South Korea
Prior art keywords
information
page
document
document separation
outline
Prior art date
Application number
KR1020220166424A
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 KR1020220166424A priority Critical patent/KR20240082614A/ko
Publication of KR20240082614A publication Critical patent/KR20240082614A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • 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/18Extraction of features or characteristics of the image
    • G06V30/1801Detecting partial patterns, e.g. edges or contours, or configurations, e.g. loops, corners, strokes or intersections
    • 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/18Extraction of features or characteristics of the image
    • G06V30/182Extraction of features or characteristics of the image by coding the contour of the pattern
    • G06V30/1823Extraction of features or characteristics of the image by coding the contour of the pattern using vector-coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/41Analysis of document content

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에 관한 것으로서, 보다 구체적으로는 여러 문서가 포함되어 구성된 문서 파일에서 각 문서를 구분하여 분리할 수 있는 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에 관한 것이다.
본 발명에서는, 문서 분리 장치에서, 각각 하나 이상의 페이지로 이루어진 하나 이상의 문서를 포함하는 문서 파일 중 제1 페이지에 포함되는 하나 이상의 객체에 대한 제1 정보와, 상기 제1 페이지에 후속하는 제2 페이지에 포함되는 하나 이상의 객체에 대한 제2 정보를 추출하는 단계; 상기 제1 정보와 상기 제2 정보를 기초로 하나 이상의 피쳐 정보를 생성하는 단계; 및 상기 하나 이상의 피쳐 정보를 미리 학습된 문서 분리 판단 모델로 입력하여 상기 제1 페이지와 상기 제2 페이지가 상기 하나 이상의 문서 중 동일한 문서에 포함된 것인지를 판단하는 단계;를 포함하는 것을 특징으로 하는 문서 분리 방법을 개시한다.

Description

문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램{Method, apparatus, system and computer program for dividing a document}
본 발명은 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에 관한 것으로서, 보다 구체적으로는 여러 문서가 포함되어 구성된 문서 파일에서 각 문서를 구분하여 분리할 수 있는 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에 관한 것이다.
최근 종이 등에 인쇄된 문서를 전자화하여 정보를 추출하여 처리하는 기술이 폭넓게 활용되고 있으며, 나아가 이를 이용하여 업무를 자동화하는 기술도 빠르게 확산하고 있다.
그런데, 처리하고자 하는 하나의 문서 파일에 복수 종류의 문서가 포함되는 경우, OCR 엔진 등을 통해 데이터를 추출할 때 서로 다른 문서에 들어있는 데이터를 정확하게 구분하여 처리하지 못하는 등의 문제가 따를 수 있다.
이와 관련하여, 종래에는 각 문서 종류 별로 미리 템플릿(template)을 만들어 문서를 관리하는데 사용하였다. 템플릿(template)이란 대상 문서의 종류에 따라 인식되어야 할 정보를 미리 정의해 놓은 양식을 말한다.
이에 따라, 종래에는 상기 템플릿을 사용하여 하나의 문서 파일에 들어있는 복수 종류의 문서를 분리하였으며, 보다 구체적으로는 문서 파일의 전체 페이지를 탐색하면서 각 페이지에 대해 각 템플릿을 대비하면서 매칭이 되는 경우 해당 페이지를 파일 분리의 기준점으로 삼는 방식을 사용하였다.
그런데, 이러한 경우 템플릿이 준비되지 않은 문서 혹은 템플릿이 변형된 문서 등의 경우 정확하게 문서를 인식하여 분리하지 못하는 문제가 따를 수 있었다.
또한, 문서의 종류는 매우 다양할 수 있고 언제든지 양식이 변경될 수 있을 뿐만 아니라, 템플릿의 생성을 위한 비용도 상당하여 유지 관리 비용이 지속적으로 발생할 수 있으므로, 템플릿에 기반해 문서를 분리하여 처리하는 방식은 장기적으로 효율적인 해결 방안이 될 수 없다.
이에 따라, 템플릿(template)에 기반하지 않고도 문서를 분리할 수 있는 방안이 요구되고 있으나, 아직 이에 대한 효율적인 해결 방안이 제시되지 못하고 있다.
대한민국 공개특허 제10-2020-0008189호 (2020.01.28)호
본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위해 창안된 것으로, 템플릿을 사용하지 않고도 하나의 문서 파일에 포함된 복수의 문서를 효율적으로 분리할 수 있는 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램을 제공하는 것을 목적으로 한다.
또한, 본 발명에서는 문서 분리를 위한 템플릿을 생성할 필요가 없어 지속적인 유지 관리 비용을 절감할 수 있는 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램을 제공하는 것을 목적으로 한다.
나아가, 본 발명에서는 문서에서 복수의 요소를 함께 고려하여 보다 높은 정확도로 문서 분리를 수행할 수 있는 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램을 제공하는 것을 목적으로 한다.
그 외 본 발명의 세부적인 목적은 아래에 기재되는 구체적인 내용을 통하여 이 기술 분야의 전문가나 연구자에게 자명하게 파악되고 이해될 수 있을 것이다.
상기 과제를 해결하기 위한 본 발명의 한 측면에 따른 문서 분리 방법은, 문서 분리 장치에서, 각각 하나 이상의 페이지로 이루어진 하나 이상의 문서를 포함하는 문서 파일 중 제1 페이지에 포함되는 하나 이상의 객체에 대한 제1 정보와, 상기 제1 페이지에 후속하는 제2 페이지에 포함되는 하나 이상의 객체에 대한 제2 정보를 추출하는 단계; 상기 제1 정보와 상기 제2 정보를 기초로 하나 이상의 피쳐 정보를 생성하는 단계; 및 상기 하나 이상의 피쳐 정보를 미리 학습된 문서 분리 판단 모델로 입력하여 상기 제1 페이지와 상기 제2 페이지가 상기 하나 이상의 문서 중 동일한 문서에 포함된 것인지를 판단하는 단계;를 포함하는 것을 특징으로 한다.
여기서, 상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 직선에 대한 정보이고, 상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 직선에 대한 정보일 수 있다.
이때, 상기 생성하는 단계에서는, 상기 제1 정보와 상기 제2 정보의 유사도를 기초로 상기 피쳐 정보를 생성할 수 있다.
또한, 상기 제1 정보는 상기 제1 페이지에 포함되는 가로 방향 직선의 윤곽 정보와 세로 방향 직선의 윤곽 정보 중 하나 이상을 포함하고, 상기 제2 정보는 상기 제2 페이지에 포함되는 가로 방향 직선의 윤곽 정보와 세로 방향 직선의 윤곽 정보 중 하나 이상을 포함할 수 있다.
또한, 상기 생성하는 단계에서는, 2차원 이미지 형태를 가지는 상기 제1 정보로부터 1차원 벡터 형태를 가지는 제1 벡터 정보를 산출하고, 2차원 이미지 형태를 가지는 상기 제2 정보로부터 1차원 벡터 형태를 가지는 제2 벡터 정보를 산출하여, 상기 제1 벡터 정보와 상기 제2 벡터 정보의 유사도를 기초로 상기 피쳐 정보를 생성할 수 있다.
또한, 상기 생성하는 단계에서는, 상기 제1 페이지에 대하여 상기 가로 방향 윤곽선, 상기 세로 방향 윤곽선 및 상기 가로 방향 윤곽선과 상기 세로 방향 윤곽선을 이용해 3종류의 상기 제1 벡터 정보를 산출하고, 상기 제2 페이지에 대하여 상기 가로 방향 윤곽선, 상기 세로 방향 윤곽선 및 상기 가로 방향 윤곽선과 상기 세로 방향 윤곽선을 이용해 3종류의 상기 제2 벡터 정보를 산출할 수 있다.
또한, 상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 단어에 대한 정보이고, 상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 단어에 대한 정보일 수 있다.
이때, 상기 제1 정보는 상기 제1 페이지의 미리 정해진 영역에 존재하는 하나 이상의 단어의 바운딩 박스에 대한 제1 위치 정보를 포함하고, 상기 제2 정보는 상기 제2 페이지의 미리 정해진 영역에 존재하는 하나 이상의 단어의 바운딩 박스에 대한 제2 위치 정보를 포함할 수 있다.
또한, 상기 생성하는 단계에서는, 상기 제1 페이지의 상기 제1 위치 정보와 상기 제2 페이지의 상기 제2 위치 정보의 차이를 기초로 상기 피쳐 정보를 생성할 수 있다.
또한, 상기 제1 정보에는 상기 제1 페이지에 포함되는 하나 이상의 단어에 대한 위치 정보도 포함되고, 상기 제2 정보에는 상기 제2 페이지에 포함되는 하나 이상의 단어에 대한 위치 정보도 포함될 수 있다.
이때, 상기 피쳐 정보에는, 상기 제1 페이지와 상기 제2 페이지의 하나 이상의 직선에 대한 윤곽 정보를 기초로 산출되는 제1 피쳐 정보와, 상기 제1 페이지와 상기 제2 페이지의 하나 이상의 단어에 대한 위치 정보를 기초로 산출되는 제2 피쳐 정보가 포함될 수 있다.
또한, 본 발명의 다른 측면에 따른 문서 분리 장치는, 각각 하나 이상의 페이지로 이루어진 하나 이상의 문서를 포함하는 문서 파일 중 제1 페이지에 포함되는 하나 이상의 객체에 대한 제1 정보와, 상기 제1 페이지에 후속하는 제2 페이지에 포함되는 하나 이상의 객체에 대한 제2 정보를 추출하는 정보 추출부; 상기 제1 정보와 상기 제2 정보를 기초로 하나 이상의 피처 정보를 생성하는 피처 정보 생성부; 및 상기 하나 이상의 피쳐 정보를 미리 학습된 문서 분리 판단 모델로 입력하여 상기 제1 페이지와 상기 제2 페이지가 상기 하나 이상의 문서 중 동일한 문서에 포함된 것인지를 판단하는 동일 문서 판단부;를 포함할 수 있다.
여기서, 상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 직선에 대한 정보이고, 상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 직선에 대한 정보일 수 있다.
또한, 상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 단어에 대한 정보이고, 상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 단어에 대한 정보일 수 있다.
또한, 상기 피쳐 정보에는, 상기 제1 페이지와 상기 제2 페이지의 하나 이상의 직선에 대한 윤곽 정보를 기초로 산출되는 제1 피쳐 정보와, 상기 제1 페이지와 상기 제2 페이지의 하나 이상의 단어에 대한 위치 정보를 기초로 산출되는 제2 피쳐 정보가 포함될 수 있다.
본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서는, 템플릿을 사용하지 않고도 하나의 문서 파일에 포함된 복수의 문서를 효율적으로 분리할 수 있게 된다.
또한, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서는, 문서 분리를 위한 템플릿을 생성할 필요가 없어 지속적인 유지 관리 비용을 절감할 수 있게 된다.
나아가, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서는, 문서에서 복수의 요소를 함께 고려하여 보다 높은 정확도로 문서 분리를 수행할 수 있게 된다.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과는 본 명세서에 기재된 내용으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부도면은 본 발명에 대한 실시예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 사상을 설명한다.
도 1은 본 발명의 일 실시예에 따른 문서 분리 시스템의 구성도를 예시하는 도면이다.
도 2 내지 도 3은 본 발명의 일 실시예에 따른 문서 분리 동작을 예시하는 도면이다.
도 4는 본 발명의 일 실시예에 따른 문서 분리 방법의 순서도를 예시하는 도면이다.
도 5 내지 도 14는 본 발명의 일 실시예에 따른 문서 분리 방법의 구체적인 동작을 예시하는 도면이다.
도 15는 본 발명의 일 실시예에 따른 문서 분리 방법의 구체적인 동작을 예시하는 순서도이다.
도 16은 본 발명의 일 실시예에 따른 문서 분리 장치에 대한 블록도이다.
도 17은 본 발명의 일 실시예에 따른 문서 분리 장치의 구체적인 구성을 예시하는 도면이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시예들을 상세히 설명한다. 본 발명의 목적, 특정한 장점들 및 신규한 특징들은 첨부된 도면들과 연관되어지는 이하의 상세한 설명과 바람직한 실시예들로부터 더욱 명확해질 것이다.
이에 앞서 본 명세서 및 청구범위에 사용된 용어나 단어는 발명자가 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 개념을 적절하게 정의한 것으로 본 발명의 기술적 사상에 부합되는 의미와 개념으로 해석되어야 하며, 단지 실시예들을 설명하기 위한 것일 뿐, 본 발명을 제한하는 것으로 해석되지 않아야 한다.
구성요소들에 참조 부호를 부여함에 있어, 참조 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함을 고려하여 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니며, 소프트웨어 또는 하드웨어 구성요소를 의미할 수 있다.
본 발명의 구성요소를 설명하는데 있어서, 단수 형태로 구성요소가 표현되는 경우 특별히 언급하지 않는 한 그 구성요소가 복수 형태도 포함하는 것으로 이해되어야 한다. 또한, "제1", "제2", 등의 용어는, 하나의 구성요소를 다른 구성요소와 구별하기 위해 사용되는 것으로, 구성요소가 상기 용어들에 의해 제한되는 것은 아니다. 또한, 어떤 구성요소가 다른 구성요소에 연결되는 경우, 구성요소와 다른 구성요소 사이에 또 다른 구성요소가 연결될 수도 있다는 것을 의미한다.
또한, 본 명세서에 개시된 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
이하에서는, 본 발명에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램의 예시적인 실시형태들을 첨부된 도면을 참조하여 상세히 설명한다.
먼저, 도 1과 도 2에서는 본 발명의 일 실시예에 따른 문서 분리 시스템(100)의 구성을 예시하고 있다. 도 1에서 볼 수 있는 바와 같이, 본 발명의 일 실시예에 따른 문서 분리 시스템(100)은 문서 파일을 생성하거나 저장하면서 문서 분리 시스템(120)으로 제공할 수 있는 문서 제공 장치(110a, 110b)와 상기 문서 제공 장치(110a, 110b)에서 제공되는 문서 파일을 분석하여 상기 문서 파일에 포함되는 하나 이상의 문서를 분리하는 문서 분리 장치(120)를 포함하여 구성될 수 있다.
이때, 상기 문서 제공 저장 장치(110a, 110b)는 종이 문서 등을 스캔하거나 OCR 등을 통하여 전자적 형식의 문서 파일로 생성하는 장치이거나, 기생성된 문서 파일을 저장하고 제공할 수 있는 스토리지(storage) 장치일 수 있으나, 본 발명이 반드시 이에 한정되는 것은 아니며, 이외에 클라우드 서버를 이용하여 구현되거나, 데이터베이스(Database) 장치 등 문서 파일을 생성하거나 저장하여 제공할 수 있는 다양한 유형의 장치를 폭넓게 이용하여 구성할 수 있다.
또한, 상기 문서 분리 장치(120)는 하나 혹은 둘 이상의 서버(server)를 이용하여 구현될 수 있으나, 본 발명이 반드시 이에 한정되는 것은 아니며 이외에도 전용 장치로 구현되거나, 사용자의 단말이나 서버 등의 장치에서 구동되는 프로세스 등으로 구현되는 등 다양한 형태로 구현하는 것이 가능하다.
또한, 도 1에서 상기 문서 제공 장치(110a, 110b)와 상기 문서 분리 장치(120)를 연결하는 통신 네트워크(130)로서는 유선 네트워크와 무선 네트워크 등을 사용할 수 있으며, 구체적으로 근거리 통신망 (LAN: Local Area Network), 도시권 통신망 (MAN: Metropolitan Area Network), 광역 통신망 (WAN: Wide Area Network) 등의 다양한 통신망을 포함할 수 있다. 또한, 상기 통신 네트워크(130)는 공지의 월드 와이드 웹(WWW: World Wide Web)을 포함할 수도 있다.
또한, 본 발명에서는 상기 문서 분리 시스템(100)에서 상기 문서 제공 장치(110a, 110b)가 반드시 상기 통신 네트워크(130)를 통하여 상기 문서 분리 장치(120)와 소정의 데이터를 송수신하여야 하는 것은 아니며, 상기 문서 제공 장치(110a, 110b)와 상기 문서 분리 장치(120)가 일체형으로 구성되는 등 다양한 형태로 구현하는 것도 가능하다.
이에 따라, 본 발명의 일 실시예에 따른 문서 분리 시스템(100)에서는, 상기 문서 제공 장치(110)에서 제공하는 문서 파일에 각각 하나 이상의 페이지로 이루어진 하나 이상의 문서가 포함되더라도 별도의 템플릿(template)이 없더라도 상기 문서 파일에 포함되는 각 문서를 분리하여 제공할 수 있게 된다.
보다 구체적인 예를 들어, 도 2에서 볼 수 있는 바와 같이, 문서 파일에 11 페이지의 문서가 포함되는 경우, 본 발명의 일 실시예에 따른 문서 분리 시스템(100)에서는 별도의 템플릿(template)이 없더라도, 도 3에서 볼 수 있는 바와 같이, 상기 문서 파일에 포함되는 항공화물운송장(HAWB), 선적지시서(shipping order), 포장 명세서(packing list), 상품 수령증(delivery note) 1, 상품 수령증(delivery note) 2, 청구서(invoice) 1, 청구서(invoice) 2를 각각 분리할 수 있게 된다.
또한, 본 발명의 일 실시예에 따른 문서 분리 방법은, 도 4에서 볼 수 있는 바와 같이, 문서 분리 장치(120)에서, 각각 하나 이상의 페이지로 이루어진 하나 이상의 문서를 포함하는 문서 파일 중 제1 페이지에 포함되는 하나 이상의 객체에 대한 제1 정보와, 상기 제1 페이지에 후속하는 제2 페이지에 포함되는 하나 이상의 객체에 대한 제2 정보를 추출하는 단계(S110), 상기 제1 정보와 상기 제2 정보를 기초로 하나 이상의 피쳐(feature) 정보를 생성하는 단계(S120) 및 상기 하나 이상의 피쳐(feature) 정보를 미리 학습된 문서 분리 판단 모델로 입력하여 상기 제1 페이지와 상기 제2 페이지가 상기 하나 이상의 문서 중 동일한 문서에 포함된 것인지를 판단하는 단계(S130)를 포함할 수 있다.
나아가, 상기 도 4에 도시된 방법은 예를 들어, 상기 문서 분리 장치(120)에 의해 수행될 수 있으며, 이때 상기 문서 분리 장치(120)는 도 17 및 도 17과 관련하여 후술하는 설명의 컴퓨팅 장치를 포함하여 구현될 수 있다. 예컨대 상기 문서 분리 장치(120)는 프로세서(10)를 구비하고 상기 프로세서(10)에서는 문서 분리를 수행하기 위한 동작을 구현하도록 구성된 명령어를 수행하여 문서 분리를 수행할 수 있다.
여기서, 상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 직선에 대한 정보이고, 상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 직선에 대한 정보일 수 있다.
이때, 상기 생성하는 단계(S120)에서는, 상기 제1 정보와 상기 제2 정보의 유사도를 기초로 상기 피쳐 정보를 생성할 수 있다.
또한, 상기 제1 정보는 상기 제1 페이지에 포함되는 가로 방향 직선의 윤곽 정보와 세로 방향 직선의 윤곽 정보 중 하나 이상을 포함하고, 상기 제2 정보는 상기 제2 페이지에 포함되는 가로 방향 직선의 윤곽 정보와 세로 방향 직선의 윤곽 정보 중 하나 이상을 포함할 수 있다.
또한, 상기 생성하는 단계(S120)에서는, 2차원 이미지 형태를 가지는 상기 제1 정보로부터 1차원 벡터 형태를 가지는 제1 벡터 정보를 산출하고, 2차원 이미지 형태를 가지는 상기 제2 정보로부터 1차원 벡터 형태를 가지는 제2 벡터 정보를 산출하여, 상기 제1 벡터 정보와 상기 제2 벡터 정보의 유사도를 기초로 상기 피쳐 정보를 생성할 수 있다.
또한, 상기 생성하는 단계(S120)에서는, 상기 제1 페이지에 대하여 상기 가로 방향 윤곽선, 상기 세로 방향 윤곽선 및 상기 가로 방향 윤곽선과 상기 세로 방향 윤곽선을 이용해 3종류의 상기 제1 벡터 정보를 산출하고, 상기 제2 페이지에 대하여 상기 가로 방향 윤곽선, 상기 세로 방향 윤곽선 및 상기 가로 방향 윤곽선과 상기 세로 방향 윤곽선을 이용해 3종류의 상기 제2 벡터 정보를 산출할 수 있다.
또한, 상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 단어에 대한 정보이고, 상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 단어에 대한 정보일 수 있다.
이때, 상기 제1 정보는 상기 제1 페이지의 미리 정해진 영역에 존재하는 하나 이상의 단어의 바운딩 박스에 대한 제1 위치 정보를 포함하고, 상기 제2 정보는 상기 제2 페이지의 미리 정해진 영역에 존재하는 하나 이상의 단어의 바운딩 박스에 대한 제2 위치 정보를 포함할 수 있다.
또한, 상기 생성하는 단계(S120)에서는, 상기 제1 페이지의 상기 제1 위치 정보와 상기 제2 페이지의 상기 제2 위치 정보의 차이를 기초로 상기 피쳐 정보를 생성할 수 있다.
또한, 상기 제1 정보에는 상기 제1 페이지에 포함되는 하나 이상의 단어에 대한 위치 정보도 포함되고, 상기 제2 정보에는 상기 제2 페이지에 포함되는 하나 이상의 단어에 대한 위치 정보도 포함될 수 있다.
이때, 상기 피쳐 정보에는, 상기 제1 페이지와 상기 제2 페이지의 하나 이상의 직선에 대한 윤곽 정보를 기초로 산출되는 제1 피쳐 정보와, 상기 제1 페이지와 상기 제2 페이지의 하나 이상의 단어에 대한 위치 정보를 기초로 산출되는 제2 피쳐 정보가 포함될 수 있다.
또한, 상기 문서 분리 판단 모델은 미리 학습된 기계 학습 모델을 기초로 구성될 수 있다.
또한, 상기 문서 파일이 검색 가능한 PDF 파일인지 여부를 구분하여 서로 다른 방식으로 상기 바운딩 박스를 식별할 수 있다.
이에 따라, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서는, 템플릿을 사용하지 않고도 하나의 문서 파일에 포함된 복수의 문서를 효율적으로 분리할 수 있고, 또한 문서 분리를 위한 템플릿을 생성할 필요가 없어 지속적인 유지 관리 비용을 절감할 수 있으며, 나아가 문서에서 복수의 요소를 함께 고려하여 보다 높은 정확도로 문서 분리를 수행할 수 있게 된다.
이하, 도 1 및 도 4를 참조하여 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에 대하여 보다 자세하게 살핀다.
먼저, 상기 추출하는 단계(S110)에서는, 문서 분리 장치(120)에서 각각 하나 이상의 페이지로 이루어진 하나 이상의 문서를 포함하는 문서 파일 중 제1 페이지에 포함되는 하나 이상의 객체에 대한 제1 정보와, 상기 제1 페이지에 후속하는 제2 페이지에 포함되는 하나 이상의 객체에 대한 제2 정보를 추출하게 된다.
이때, 상기 문서 파일은 PDF 파일일 수 있으나, 본 발명이 반드시 이에 한정되는 것은 아니며, 이외에도 이미지 파일 등 하나 이상의 문서를 포함하는 다양한 형태의 파일이 사용될 수 있다.
또한, 상기 객체로서는 문서의 테이블, 박스, 도표 등의 윤곽선이나, 문단 구분, 다단 구분, 밑줄 등 문서에서 사용되는 다양한 선(line)이 포함될 수 있다.
보다 구체적으로, 상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 직선에 대한 정보일 수 있고, 또한 상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 직선에 대한 정보일 수 있다.
또한, 상기 객체로서 문서에 포함되는 단어(word) 등이 사용될 수도 있다.
보다 구체적으로, 상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 단어에 대한 위치 정보일 수 있고, 또한 상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 단어에 대한 위치 정보일 수 있다.
이에 따라, 상기 S110 단계에서는 상기 문서 파일의 제1 페이지 및 후속하는 제2 페이지에 포함되는 선(line), 단어 등의 객체에 대한 정보를 추출하여 상기 제1 페이지와 상기 제2 페이지가 동일 문서의 연속하는 페이지인지 여부를 판단하기 위하여 사용할 수 있다.
다음으로, 상기 생성하는 단계(S120)에서는, 상기 제1 정보와 상기 제2 정보를 기초로 하나 이상의 피쳐 정보를 생성하게 된다.
보다 구체적으로, 상기 객체로서 문서에 포함되는 선(line)이 사용되는 경우, 상기 피쳐 정보는 상기 제1 페이지와 상기 제2 페이지에 포함되는 하나 이상의 선(line)의 유사도를 기초로 산출될 수 있다.
또한, 상기 객체로서 문서에 포함되는 단어(word)가 사용되는 경우, 상기 피쳐 정보는 상기 제1 페이지와 상기 제2 페이지에 포함되는 하나 이상의 단어(word)의 위치 정보의 차이를 기초로 산출될 수 있다.
이에 따라, 상기 S120 단계에서는 상기 문서 파일의 제1 페이지 및 후속하는 제2 페이지에 포함되는 하나 이상의 선(line) 간의 유사도, 상기 제1 페이지 및 후속하는 제2 페이지에 포함되는 하나 이상의 단어의 위치 정보의 차이를 기초로 피쳐 정보를 산출하게 된다.
이어서, 상기 판단하는 단계(S130)에서는, 상기 하나 이상의 피쳐 정보를 미리 학습된 문서 분리 판단 모델로 입력하여 상기 제1 페이지와 상기 제2 페이지가 상기 하나 이상의 문서 중 동일한 문서에 포함된 것인지를 판단하게 된다.
이때, 상기 문서 분리 판단 모델은 기계 학습(machine learning) 모델을 기초로 구성될 수 있으나, 본 발명이 반드시 이에 한정되는 것은 아니다.
보다 구체적으로 상기 문서 분리 판단 모델은, 도 5에서 볼 수 있는 바와 같이, 문서의 연속 여부가 레이블링(labeling)된 학습 데이터를 이용하여 미리 학습된 기계 학습 모델일 수 있다.
여기서, 상기 학습을 위한 피쳐(feature) 정보는 상기 문서 파일의 제1 페이지 및 후속하는 제2 페이지에 포함되는 하나 이상의 선(line) 간의 유사도, 상기 제1 페이지 및 후속하는 제2 페이지에 포함되는 하나 이상의 단어의 위치 정보의 차이를 기초로 하여 산출될 수 있다.
이때, 도 5에서 볼 수 있는 바와 같이, 문서 파일의 제1 페이지(501)는 제2 페이지(502)와 다른 문서이므로 연속된 페이지에 해당하지 않아 거짓(False)으로 레이블링되고, 상기 제2 페이지(502)와 제3 페이지(503)도 서로 다른 문서로서 연속된 페이지에 해당하지 않아 거짓(False)으로 레이블링되며, 반면 상기 제3 페이지(503)은 제4 페이지(504)와 동일 문서의 연속하는 페이지에 해당하므로 참(True)으로 레이블링되어 학습을 수행하게 된다.
이에 따라, 학습된 문서 분리 판단 모델에서는 상기 S120 단계에서 생성되는 피쳐(feature) 정보를 입력받아 상기 문서 파일의 제1 페이지와 제2 페이지가 동일 문서의 연속된 페이지인지 여부를 판단할 수 있게 된다.
이하, 각 도면을 참조하여, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에 대하여 보다 자세하게 살핀다.
먼저, 도 6 내지 도 8에서는, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서 문서 파일로부터 선(line)에 대한 제1 정보를 추출하고 이를 기초로 피쳐 정보를 산출하는 구성을 예시하고 있다.
먼저, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서, 상기 문서 분리 장치(120)는 OpenCV(Open Computer Vision) 등의 이미지 처리 라이브러리 등을 이용하여 문서 파일을 로딩(loading)하여 처리할 수 있다.
이때, 상기 문서 분리 장치(120)에서 상기 문서 파일을 로딩할 때 용지 크기를 고려하여 픽셀 단위로 변환하는 작업을 수행할 수 있으나, 본 발명이 반드시 이에 한정되는 것은 아니다.
보다 구체적인 예를 들어, 도 6에서 볼 수 있는 바와 같이, 문서가 A4 용지(297mm x 210mm) 크기인 경우(도 6의 601), 이를 픽셀로 변환하면 해상도 150 dpi 기준으로 1240 픽셀 x 1754 픽셀로 변환될 수 있으며(도 6의 602), 해상도 300 dpi 기준으로는 2480 픽셀 x 3508 픽셀로 변환될 수 있다(도 6의 603).
이때, 상기 문서에서 좌측 상단의 픽셀의 좌표를 (0, 0)으로 하고 우측 하단 픽셀의 좌표를 (1240, 1754) 또는 (2480, 3508)로 할 수 있다.
이어서, 상기 문서 분리 장치(120)에서는 상기 OpenCV 등을 이용하여, 도 7에서 볼 수 있는 바와 같이, 문서 파일의 각 페이지에 대하여 하나 이상의 직선에 대한 윤곽(contour) 정보를 추출할 수 있다.
이때, 상기 윤곽 정보를 추출함에 있어서 최소 길이와 최대 두께의 조건을 설정할 수 있으며, 보다 구체적인 예를 들어 상기 최소 길이로서 40 픽셀, 상기 최대 두께로서 1 픽셀로 설정할 수 있다.
이에 따라, 검출된 윤곽 정보는 Point 객체로 리턴될 수 있으며, 여기서 윤곽에는 길이뿐만 아니라 두께도 가질 수 있으므로, 도 7의 (a)와 같은 얇은 직사각형의 형태를 가질 수 있다.
보다 구체적인 예를 들어, 도 7의 (b)에서는 상기 도 7의 (a)의 윤곽 형상에서 양측 종단(701, 702)을 확대하여 예시하고 있다.
이때, 도 7의 (b)에서 볼 수 있는 바와 같이, 상기 윤곽 정보는 검출된 윤곽에서 양측 종단(703, 704)의 네 꼭지점에 대한 좌표값이 될 수 있다.
보다 구체적인 예를 들어, 도 7의 (b)에서 윤곽 정보는 Point[0] = {x:90, y:1643}, Point[1] = {x:89, y:1644}, Point[3] = {x:1195, y:1644}, Point[4] = {x:1194, y:1643}의 값을 가질 수 있다.
또한, 도 8에서는 도 2에 도시된 문서 파일의 10 페이지와 11 페이지(도 8의 (a))에 대하여 검출한 선을 이미지로 표시한 도면(도 8의 (b))을 예시하고 있다.
이때, 도 8(a)의 10 페이지와 11 페이지는 모두 청구서(invoce)로서 서로 같은 유형이지만 별도의 문서이므로, 상기 10 페이지와 11 페이지는 분리되어야 하는 문서인데, 이에 대한 판단을 위하여 각 페이지에 포함되는 선(line)에 대한 가로, 세로 윤곽 정보가 활용될 수 있다.
보다 구체적으로, 두 페이지의 가로, 세로 윤곽 정보가 유사하다면 상기 두 페이지는 같은 유형의 문서일 가능성이 높고, 따라서 서로 연속되지 않고 분리되어야 하는 문서로 분류되는 방향으로 학습되는 것이 바람직하다.
보다 구체적인 예를 들어, 상기 윤곽 정보를 산출하기 위하여, OpenCV 등을 활용하여 제1 페이지에 대한 가로, 세로 윤곽 정보를 산출하고, 이를 기초로 2차원 이미지 형태(예를 들어, A4 용지 기준 1240 픽셀 x 1754 픽셀)의 행렬에 대하여 윤곽이 검출된 곳은 1, 검출되지 않은 곳은 0으로 표기하여 제1 정보를 산출할 수 있다.
이때, 상기 제1 정보의 2차원 행렬의 가로 및 세로 크기는 상기 제1 페이지의 가로 및 세로 픽셀 숫자와 동일하게 구성될 수 있다(예를 들어, A4 용지 기준 1240 픽셀 x 1754 픽셀).
이어서, 상기 제1 정보의 2차원 행렬을 열 기준(row wise)로 배치하여 1차원 벡터 형태를 가지는 제1 벡터 정보로 산출할 수 있다.
보다 구체적인 예를 들어, 가로 윤곽에 대한 벡터 정보는 [0, 1, 1, 0, 1, 1, 0, 0, 0, ? , 0, 0, 0], 세로 윤곽에 대한 벡터 정보는 [0, 0, 0, 0, 1, 1, 0, 0, 0, ? , 0, 0, 0], 가로 및 세로 윤곽에 대한 벡터 정보는 [0, 1, 1, 0, 1, 1, 0, 0, 0, ? , 0, 0, 0]과 같이 산출될 수 있다.
이에 따라, 상기 문서 분리 장치(120)에서는, 상기 제1 페이지에 대한 제1 벡터 정보와 상기 제2 페이지에대한 제2 벡터 정보의 유사도를 기준으로 피쳐(feature) 벡터를 산출할 수 있다.
보다 구체적인 예를 들어, 상기 문서 분리 장치(120)에서는, 연속하는 두 페이지에 대하여 상기 가로 윤곽에 대한 벡터 정보, 상기 세로 윤곽에 대한 벡터 정보, 상기 가로 및 세로 윤곽에 대한 벡터 정보의 유사도를 각각 산출할 수 있다.
이때, 연속하는 두 페이지의 벡터 간의 유사도는 아래 수학식 1에 의하여 산출될 수 있다.
[수학식 1]
여기서, 위와 같이 연속하는 두 페이지에 대하여 상기 가로 윤곽에 대한 벡터 정보, 상기 세로 윤곽에 대한 벡터 정보, 상기 가로 및 세로 윤곽에 대한 벡터 정보의 유사도를 각각 산출하는 이유는 아래와 같다.
즉, 다양한 예외 케이스가 존재할 수도 있겠으나, 일반적으로 동일 문서의 연속하는 페이지는 이전 페이지의 문서 양식 중 세로선이 다음 페이지에 그대로 이어져서 나타나는 경우가 많다.
보다 구체적인 예를 들어, 도 9의 (a)에서 볼 수 있는 바와 같이, 동일 문서에서는 이전 페이지(901)와 후속하는 페이지(902)에서 세로선이 그대로 이어지는 형태를 가질 수 있다.
이러한 경우, 상기 두 페이지의 세로 윤곽에 대한 벡터 정보에 대한 유사도를 산출하는 경우 높은 유사도를 가질 수 있다.
반면, 도 9의 (b)에서 볼 수 있는 바와 같이, 같은 유형이지만 별도의 문서(903, 904)인 경우, 가로 윤곽에 대한 벡터 정보와 가로 및 세로 윤곽에 대한 벡터 정보가 높은 유사도를 보일 수 있다.
이와 같이, 상기 가로 윤곽에 대한 벡터 정보, 상기 세로 윤곽에 대한 벡터 정보, 상기 가로 및 세로 윤곽에 대한 벡터 정보를 기초로 산출되는 유사도를 기초로 피쳐 정보를 산출할 수 있으며, 이를 이용하여 상기 문서 분리 판단 모델의 학습에 활용할 수도 있다.
또한, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서, 상기 문서 분리 장치(120)는 OCR(Optical Character Recognition) 엔진 등을 이용하여 문서에 포함되는 단어(word)의 바운딩 박스(bounding box)를 검출하고, 상기 단어에 대응하는 바운딩 박스에 대한 위치 정보를 산출할 수 있으나, 본 발명이 반드시 이에 한정되는 것은 아니다.
이때, 상기 바운딩 박스는 단어를 감싸는 가상의 박스로 페이지를 2차원 공간으로 치환했을 때 해당 단어가 X축, Y축에서 어디에 위치하는지에 대한 위치 정보와 상기 박스의 너비와 높이를 포함하는 정보를 가질 수 있다.
예를 들어, 도 10의 (a)에서 볼 수 있는 바와 같이, 문서 파일의 제1 페이지에 OCR 엔진을 적용하여, 상기 제1 페이지에 포함되는 단어(word)들에 대한 바운딩 박스(예를 들어 1001)를 검출할 수 있다.
이때, 도 10의 (b)에서 볼 수 있는 바와 같이, 상기 OCR 엔진에서는 상기 바운딩 박스(1001)에 대한 위치 정보(도 9(b)의 X, Y)와 상기 바운딩 박스(901)에 대한 너비와 높이 정보(도 9(b)의 Width, Height)를 산출할 수 있다.
여기서, 일반적인 OCR 엔진에서 상기 바운딩 박스에 대한 정보는 Json 배열 행태로 추출될 수 있다.
보다 구체적인 예를 들어, 도 11에서는 Json 형태로 추출된 바운딩 박스의 정보(1101)를 예시하고 있다. 이때, 단위는 픽셀이 사용될 수 있다.
이에 따라, 상기 OCR 엔진을 통해 추출되는 정보(1101)로부터 상기 단어에 대응하는 바운딩 박스의 위치 정보(예를 들어, 도 11에서 X=794, Y=86)을 추출할 수 있게 된다.
또한, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서는, 상기 문서 파일이 검색 가능한 PDF 파일인지 여부를 구분하여 서로 다른 방식으로 상기 바운딩 박스를 식별할 수도 있다.
보다 구체적으로, 상기 문서 파일이 검색 가능한 PDF 파일인 경우, OCR 엔진 등을 이용하지 않고 텍스트 파서(text parser) 라이브러리 등을 이용하여 페이지 내의 단어에 대한 바운딩 박스와 위치 정보를 추출할 수 있다.
이어서, 상기 문서 파일의 각 페이지에서 검출되는 여러 바운딩 박스 중 페이지의 연속 여부를 판단하는데 사용할 바운딩 박스를 선별할 수 있다.
이때, 문서 파일의 두 페이지가 동일 문서의 연속하는 페이지인지 여부를 판단하기 위하여 각 페이지의 상단 및 하단의 단어를 기초로 판단하는 것이 바람직하므로, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서도, 각 페이의 상단 및 하단에 위치하는 단어들을 선별하여 사용할 수 있다.
보다 구체적인 예를 들어, 도 12의 (a)에서 볼 수 있는 바와 같이, 동일 문서의 연속하는 페이지의 경우 제1페이지(1201)의 상단에 위치하는 개체들의 위치(12011, 12012, 12013)가 후속하는 제2 페이지(1202)의 상단에 위치하는 개체들의 위치(12021, 12022, 12023), 제3 페이지(1203)의 상단에 위치하는 개체들의 위치(12031, 12032, 12033)과 유사할 수 있으며, 또한 도 12의 (b)에서 볼 수 있는 바와 같이, 동일 문서의 연속하는 페이지의 경우 제4페이지(1204)의 하단에 위치하는 개체들의 위치도 후속하는 제5 페이지(1205)의 하단에 위치하는 개체들의 위치와 유사할 수 있다.
이에 따라, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서는, 도 13에서 볼 수 있는 바와 같이, 문서 파일의 제1 페이지에서 상부의 일정 영역(예를 들어, 상단 15% 영역)에 위치하는 단어들의 바운딩 박스를 검출하고, 이중 각 바운딩 박스의 Y 값을 기준으로 상단에 위치하는 일정 개수(예를 들어, 10개)의 바운딩 박스를 선택하고(예를 들어, 도 13에서 1301, 1302, 1303). 또한 후속하는 제2 페이지에서도 같은 방식으로 상단의 바운딩 박스를 선택할 수 있다(예를 들어, 도 13에서 1304, 1305, 1306).
또한, 동일한 방식으로 하단의 바운딩 박스도 선택할 수 있다.
이어서, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서는, 상기 선별된 바운딩 박스의 위치 정보를 이용하여 각 바운딩 박스에 대한 거리 차이를 피쳐(feature) 정보로 사용할 수 있다.
보다 구체적으로, 도 14에서 볼 수 있는 바와 같이, 제1 페이지에서 선별된 바운딩 박스와 제2 페이지에서 선별된 바운딩 박스에 대하여, 각 바운딩 박스 간의 거리를 구하고 이를 기초로 피쳐 정보를 생성할 수 있다.
이때, 도 14의 (a)에서 제1 페이지의 바운딩 박스 1의 위치 정보는 (500, 20)이고, 제2 페이지의 바운딩 박스 1의 위치 정보는 (498, 21)이므로, 도 14의 (b)와 같이 상기 바운딩 박스 1 간의 거리는 가 될 수 있다.
또한, 도 14의 (a)에서 제1 페이지의 바운딩 박스 3의 위치 정보는 (40, 30)이고, 제2 페이지의 바운딩 박스 3의 위치 정보는 (41, 30)이므로, 도 14의 (b)와 같이 상기 바운딩 박스 3 간의 거리는 1이 될 수 있다.
반면, 상기 양 페이지의 바운딩 박스가 동일한 위치에 있는 경우에는 상기 바운딩 박스 간의 거리는 0이 된다.
또한, 동일한 방식으로 각 페이지의 하부 일정 영역에서 바운딩 박스를 선별하고, 양 페이지의 대응하는 바운딩 박스 간의 거리를 산출할 수 있다.
이에 따라, 도 14의 (c)에서 볼 수 있는 바와 같이, 상기 문서 파일에서 제1 페이지와 제2 페이지에서 선별된 각 바운딩 박스 간의 거리도 상기 피쳐 정보에 포함될 수 있다.
나아가, 도 14의 (c)에서 볼 수 있는 바와 같이, 상기 각 바운딩 박스 간의 거리와 함께, 상기 제1 페이지와 제2 페이지에서 식별된 가로 방향 직선에 대응하는 벡터 정보와 가로 방향 직선에 대응하는 벡터 정보 및 가로 및 세로 방향 직선에 대응하는 벡터 정보 간의 유사도도 상기 피쳐 정보에 포함될 수 있다.
이에 따라, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서는, 상기 피쳐 정보를 기초로 학습된 문서 분리 판단 모델을 이용하여 문서 파일의 제1 페이지와 제2 페이지가 동일 문서의 연속하는 페이지에 해당하는지 여부를 판별할 수 있게 된다.
보다 구체적인 예를 들어, 도 15에서는 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서, 문서 분리 장치(120)가 피쳐 정보를 생성하여 문서 분리 판단 모델에 대한 학습을 수행하거나, 미리 학습된 문서 분리 판단 모델을 이용하여 입력 문서에 대한 추론을 수행하는 과정을 예시하고 있다.
도 15에서 볼 수 있는 바와 같이, 먼저 상기 문서 분리 장치(120)는 PDF 문서 등 문서 파일을 문서 제공 장치(110) 등으로부터 제공받게 된다(S11).
이에 따라, 상기 문서 분리 장치(120)의 문서 인식부(125)에서는 상기 문서 파일의 각 페이지에 대하여 아래의 프로세스를 수행하게 된다.
먼저, 상기 문서 파일에서 페이지 별로 인식이 수행되고(S12), 상기 페이지가 검색 가능한 PDF 형태의 문서인지 판단하여(S101), 이에 해당하는 경우 텍스트 파서 라이브러리 등을 이용하여 텍스트 파싱(text parsing)을 수행하고(S103), 각 단어의 바운딩 박스를 식별하게 된다(S106).
반면, 상기 페이지가 검색 가능한 PDF 형태의 문서에 해당하지 않는 경우에는, OCR 엔진 등을 통해 문자 인식을 수행하여(S102) 각 단어의 바운딩 박스를 식별하게 된다(S105).
또한, 이와 별도로 OpenCV 등을 사용하여 상기 페이지에서 가로선과 세로선을 검출하고(S104), 이를 기초로 상기 가로선 및 세로선에 대한 벡터 정보를 산출하게 된다(S107).
이에 따라, 상기 문서 파일의 각 페이지에 대하여 산출된 상기 정보들을 취합하게 된다(S13).
이어서, 상기 문서 분리 장치(120)의 피쳐 산출부(126)에서는 상기 산출된 정보들을 기초로 피쳐 정보를 산출하게 된다.
보다 구체적으로, 상기 피쳐 산출부(126)에서는 현재의 제J 페이지에 대한 정보와 후속하는 제J+1 페이지에 대한 정보를 기초로, 인접한 페이지의 가로선 및 세로선에 대한 벡터 정보의 코사인 유사도와 인접한 페이지의 상단 및 하단 영역의 단어에 대한 바운딩 박스 간의 거리를 산출하여 피쳐 정보를 산출할 수 있다(S201).
이에 따라, 위와 같이 산출된 피쳐 정보는 상기 문서 분리 판단 모델에 대한 학습을 수행하는데 사용될 수 있으며(S301), 나아가 상기 학습된 문서 분리 판단 모델로 상기 산출된 피쳐 정보를 입력하여 문서 파일의 인접하는 페이지에 대한 분리 여부를 판단하는 추론을 수행할 수도 있다.
또한, 본 발명의 또 다른 측면에 따른 컴퓨터 프로그램은 앞서 살핀 문서 분리 방법의 각 단계를 컴퓨터에서 실행시키기 위하여 컴퓨터로 판독 가능한 매체에 저장된 컴퓨터 프로그램인 것을 특징으로 한다. 상기 컴퓨터 프로그램은 컴파일러에 의해 만들어지는 기계어 코드를 포함하는 컴퓨터 프로그램뿐만 아니라, 인터프리터 등을 사용해서 컴퓨터에서 실행될 수 있는 고급 언어 코드를 포함하는 컴퓨터 프로그램일 수도 있다. 이때, 상기 컴퓨터로서는 퍼스널 컴퓨터(PC)나 노트북 컴퓨터 등에 한정되지 아니하며, 서버, 스마트폰, 태블릿 PC, PDA, 휴대전화 등 중앙처리장치(CPU)를 구비하여 컴퓨터 프로그램을 실행할 수 있는 일체의 정보처리 장치를 포함한다.
또한, 컴퓨터가 읽을 수 있는 매체는, 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 복수의 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
또한, 도 16에서는 본 발명의 일 실시예에 따른 문서 분리 장치(120)의 구성도를 예시하고 있다.
도 16에서 볼 수 있는 바와 같이 본 발명의 일 실시예에 따른 문서 분리 장치(120)는 정보 추출부(121), 피쳐 정보 생성부(122) 및 동일 문서 판단부(123)를 포함하여 구성될 수 있다.
이어서, 아래에서는 본 발명의 일 실시예에 따른 문서 분리 장치(120)를 각 구성요소 별로 나누어 살핀다. 이때, 본 발명의 일 실시예에 따른 문서 분리 장치(120)에 대한 보다 자세한 내용은 앞서 설명한 본 발명의 일 실시예에 따른 문서 분리 방법에 대한 설명으로부터 유추될 수 있는 바, 아래에서 보다 자세한 설명은 생략한다.
먼저, 상기 정보 추출부(121)에서는, 각각 하나 이상의 페이지로 이루어진 하나 이상의 문서를 포함하는 문서 파일 중 제1 페이지에 포함되는 하나 이상의 객체에 대한 제1 정보와, 상기 제1 페이지에 후속하는 제2 페이지에 포함되는 하나 이상의 객체에 대한 제2 정보를 추출하게 된다.
또한, 상기 피쳐 정보 생성부(122)에서는, 상기 제1 정보와 상기 제2 정보를 기초로 하나 이상의 피처 정보를 생성하게 된다.
이에 따라, 상기 동일 문서 판단부(123)에서는, 상기 하나 이상의 피쳐 정보를 미리 학습된 문서 분리 판단 모델로 입력하여 상기 제1 페이지와 상기 제2 페이지가 상기 하나 이상의 문서 중 동일한 문서에 포함된 것인지를 판단하게 된다.
여기서, 상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 직선에 대한 정보이고, 상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 직선에 대한 정보일 수 있다.
또한, 상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 단어에 대한 정보이고, 상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 단어에 대한 정보일 수 있다.
나아가, 상기 제1 정보에는 상기 제1 페이지에 포함되는 하나 이상의 단어에 대한 정보도 포함되고, 상기 제2 정보에는 상기 제2 페이지에 포함되는 하나 이상의 단어에 대한 정보도 포함될 수 있다.
또한, 상기 피쳐 정보에는, 상기 제1 페이지와 상기 제2 페이지의 하나 이상의 직선에 대한 윤곽 정보를 기초로 산출되는 제1 피쳐 정보와, 상기 제1 페이지와 상기 제2 페이지의 하나 이상의 단어에 대한 위치 정보를 기초로 산출되는 제2 피쳐 정보가 포함될 수 있다.
또한, 도 17에서는 본 발명의 제안 방법이 적용될 수 있는 장치(200)를 예시한다.
도 17를 참조하면, 장치(200)는 본 발명의 제안 방법에 따른 문서 분리 기법을 구현하도록 구성될 수 있다. 일 예로, 장치(200)는 기업용 문서 처리 서비스를 제공하는 서버 장치(200)일 수 있다.
예를 들어, 본 발명의 제안 방법이 적용될 수 있는 장치(200)는 리피터, 허브, 브리지, 스위치, 라우터, 게이트웨이 등과 같은 네트워크 장치, 데스크톱 컴퓨터, 워크스테이션 등과 같은 컴퓨터 장치, 스마트폰 등과 같은 이동 단말, 랩톱 컴퓨터 등과 같은 휴대용 기기, 디지털 TV 등과 같은 가전 제품, 자동차 등과 같은 이동 수단 등을 포함할 수 있다. 다른 예로, 본 발명이 적용될 수 있는 장치(200)는 SoC(System On Chip) 형태로 구현된 ASIC(Application Specific Integrated Circuit)의 일부로 포함될 수 있다.
메모리(20)는 프로세서(10)와 동작 시 연결될 수 있고, 프로세서(10)의 처리 및 제어를 위한 프로그램 및/또는 명령어들을 저장할 수 있고, 본 발명에서 사용되는 데이터와 정보, 본 발명에 따른 데이터 및 정보 처리를 위해 필요한 제어 정보, 데이터 및 정보 처리 과정에서 발생하는 임시 데이터 등을 저장할 수 있다. 메모리(20)는 ROM(Read Only Memory), RAM(Random Access Memory), EPROM(Erasable Programmable Read Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), 플래쉬(flash) 메모리, SRAM(Static RAM), HDD(Hard Disk Drive), SSD(Solid State Drive) 등과 같은 저장 장치로서 구현될 수 있다.
프로세서(10)는 메모리(20) 및/또는 네트워크 인터페이스(30)와 동작 시 연결(operatively connected)될 수 있고, 장치(200) 내 각 모듈의 동작을 제어한다. 특히, 프로세서(10)는 본 발명의 제안 방법을 수행하기 위한 각종 제어 기능을 수행할 수 있다. 프로세서(120)는 컨트롤러(controller), 마이크로 컨트롤러(microcontroller), 마이크로 프로세서(microprocessor), 마이크로 컴퓨터(microcomputer) 등으로도 불릴 수 있다. 본 발명의 제안 방법은 하드웨어(hardware) 또는 펌웨어(firmware), 소프트웨어, 또는 이들의 결합에 의해 구현될 수 있다. 하드웨어를 이용하여 본 발명을 구현하는 경우에는, 본 발명을 수행하도록 구성된 ASIC(application specific integrated circuit) 또는 DSP(digital signal processor), DSPD(digital signal processing device), PLD(programmable logic device), FPGA(field programmable gate array) 등이 프로세서(10)에 구비될 수 있다. 한편, 펌웨어나 소프트웨어를 이용하여 본 발명의 제안 방법을 구현하는 경우에는 펌웨어나 소프트웨어는 본 발명의 제안 방법을 구현하는 데 필요한 기능 또는 동작들을 수행하는 모듈, 절차 또는 함수 등과 관련된 명령어(instruction)들을 포함할 수 있으며, 명령어들은 메모리(20)에 저장되거나 메모리(20)와 별도로 컴퓨터 판독가능한 기록 매체(미도시)에 저장되어 프로세서(10)에 의해 실행될 때 장치(120)가 본 발명의 제안 방법을 구현하도록 구성될 수 있다.
또한, 장치(200)는 네트워크 인터페이스 디바이스(network interface device)(30)를 포함할 수 있다. 네트워크 인터페이스 디바이스(30)는 프로세서(10)와 동작 시 연결되며, 프로세서(10)는 네트워크 인터페이스 디바이스(30)를 제어하여 무선/유선 네트워크를 통해 정보 및/또는 데이터, 신호, 메시지 등을 나르는 무선/유선 신호를 전송 또는 수신할 수 있다. 네트워크 인터페이스 디바이스(30)는 예를 들어 IEEE 802 계열, 3GPP LTE(-A), 3GPP 5G 등과 같은 다양한 통신 규격을 지원하며, 해당 통신 규격에 따라 제어 정보 및/또는 데이터 신호를 송수신할 수 있다. 네트워크 인터페이스 디바이스(30)는 필요에 따라 장치(200) 밖에 구현될 수도 있다.
이에 따라, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서는, 템플릿을 사용하지 않고도 하나의 문서 파일에 포함된 복수의 문서를 효율적으로 분리할 수 있게 된다.
또한, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서는, 문서 분리를 위한 템플릿을 생성할 필요가 없어 지속적인 유지 관리 비용을 절감할 수 있게 된다.
나아가, 본 발명의 일 실시예에 따른 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램에서는, 문서에서 복수의 요소를 함께 고려하여 보다 높은 정확도로 문서 분리를 수행할 수 있게 된다.
본 명세서에서 설명된 위 실시예 및 도면들은 단지 예시적인 것일 뿐, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 또한, 도면에 도시된 구성요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, "필수적인", "중요하게" 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성요소가 아닐 수 있다.
본 발명의 명세서(특히 특허청구범위에서)에서 "상기"의 용어 및 이와 유사한 지시 용어의 사용은 단수 및 복수 모두에 해당하는 것일 수 있다. 또한, 본 발명에서 범위(range)를 기재한 경우 상기 범위에 속하는 개별적인 값을 적용한 발명을 포함하는 것으로서(이에 반하는 기재가 없다면), 발명의 상세한 설명에 상기 범위를 구성하는 각 개별적인 값을 기재한 것과 같다. 또한 본 발명 중 방법 발명에서 제시하는 단계들은 반드시 그 선후의 순서에 대한 구속을 의도한 것이 아니며, 각 공정의 본질에 따라 반드시 어느 단계가 선행되어야 하는 것이 아닌 한 순서는 필요에 따라 적절히 변경될 수 있다. 본 발명에서 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해본 발명의 범위가 한정되는 것은 아니다. 또한, 통상의 기술자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등 범주 내에서 설계 조건 및 요소에 따라 구성될 수 있음을 이해할 수 있다.
10 : 프로세서
20 : 메모리
30 : 인터페이스 디바이스
100 : 문서 분리 시스템
110, 110a, 110b : 문서 제공 장치
120 : 문서 분리 장치
121 : 정보 추출부
122 : 피쳐 정보 생성부
123 : 분리 판단부
125 : 문서 인식부
126 : 피쳐 생성부
130 : 통신 네트워크
200 : 장치

Claims (15)

  1. 문서 분리 장치에서, 각각 하나 이상의 페이지로 이루어진 하나 이상의 문서를 포함하는 문서 파일 중 제1 페이지에 포함되는 하나 이상의 객체에 대한 제1 정보와, 상기 제1 페이지에 후속하는 제2 페이지에 포함되는 하나 이상의 객체에 대한 제2 정보를 추출하는 단계;
    상기 제1 정보와 상기 제2 정보를 기초로 하나 이상의 피쳐 정보를 생성하는 단계; 및
    상기 하나 이상의 피쳐 정보를 미리 학습된 문서 분리 판단 모델로 입력하여 상기 제1 페이지와 상기 제2 페이지가 상기 하나 이상의 문서 중 동일한 문서에 포함된 것인지를 판단하는 단계;
    를 포함하는 것을 특징으로 하는 문서 분리 방법.
  2. 제1항에 있어서,
    상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 직선에 대한 정보이고,
    상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 직선에 대한 정보인 것을 특징으로 하는 문서 분리 방법.
  3. 제2항에 있어서,
    상기 생성하는 단계에서는,
    상기 제1 정보와 상기 제2 정보의 유사도를 기초로 상기 피쳐 정보를 생성하는 것을 특징으로 하는 문서 분리 방법.
  4. 제2항에 있어서,
    상기 제1 정보는 상기 제1 페이지에 포함되는 가로 방향 직선의 윤곽 정보와 세로 방향 직선의 윤곽 정보 중 하나 이상을 포함하고,
    상기 제2 정보는 상기 제2 페이지에 포함되는 가로 방향 직선의 윤곽 정보와 세로 방향 직선의 윤곽 정보 중 하나 이상을 포함하는 것을 특징으로 하는 문서 분리 방법.
  5. 제4항에 있어서,
    상기 생성하는 단계에서는,
    2차원 이미지 형태를 가지는 상기 제1 정보로부터 1차원 벡터 형태를 가지는 제1 벡터 정보를 산출하고,
    2차원 이미지 형태를 가지는 상기 제2 정보로부터 1차원 벡터 형태를 가지는 제2 벡터 정보를 산출하여,
    상기 제1 벡터 정보와 상기 제2 벡터 정보의 유사도를 기초로 상기 피쳐 정보를 생성하는 것을 특징으로 하는 문서 분리 방법.
  6. 제5항에 있어서,
    상기 생성하는 단계에서는,
    상기 제1 페이지에 대하여 상기 가로 방향 윤곽선, 상기 세로 방향 윤곽선 및 상기 가로 방향 윤곽선과 상기 세로 방향 윤곽선을 이용해 3종류의 상기 제1 벡터 정보를 산출하고,
    상기 제2 페이지에 대하여 상기 가로 방향 윤곽선, 상기 세로 방향 윤곽선 및 상기 가로 방향 윤곽선과 상기 세로 방향 윤곽선을 이용해 3종류의 상기 제2 벡터 정보를 산출하는 것을 특징으로 하는 문서 분리 방법.
  7. 제1항에 있어서,
    상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 단어에 대한 정보이고,
    상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 단어에 대한 정보인 것을 특징으로 하는 문서 분리 방법.
  8. 제7항에 있어서,
    상기 제1 정보는 상기 제1 페이지의 미리 정해진 영역에 존재하는 하나 이상의 단어의 바운딩 박스에 대한 제1 위치 정보를 포함하고,
    상기 제2 정보는 상기 제2 페이지의 미리 정해진 영역에 존재하는 하나 이상의 단어의 바운딩 박스에 대한 제2 위치 정보를 포함하는 것을 특징으로 하는 문서 분리 방법.
  9. 제8항에 있어서,
    상기 생성하는 단계에서는,
    상기 제1 페이지의 상기 제1 위치 정보와 상기 제2 페이지의 상기 제2 위치 정보의 차이를 기초로 상기 피쳐 정보를 생성하는 것을 특징으로 하는 문서 분리 방법.
  10. 제2항에 있어서,
    상기 제1 정보에는 상기 제1 페이지에 포함되는 하나 이상의 단어에 대한 위치 정보도 포함되고,
    상기 제2 정보에는 상기 제2 페이지에 포함되는 하나 이상의 단어에 대한 위치 정보도 포함되는 것을 특징으로 하는 문서 분리 방법.
  11. 제10항에 있어서,
    상기 피쳐 정보에는,
    상기 제1 페이지와 상기 제2 페이지의 하나 이상의 직선에 대한 윤곽 정보를 기초로 산출되는 제1 피쳐 정보와,
    상기 제1 페이지와 상기 제2 페이지의 하나 이상의 단어에 대한 위치 정보를 기초로 산출되는 제2 피쳐 정보가 포함되는 것을 특징으로 하는 문서 분리 방법.
  12. 각각 하나 이상의 페이지로 이루어진 하나 이상의 문서를 포함하는 문서 파일 중 제1 페이지에 포함되는 하나 이상의 객체에 대한 제1 정보와, 상기 제1 페이지에 후속하는 제2 페이지에 포함되는 하나 이상의 객체에 대한 제2 정보를 추출하는 정보 추출부;
    상기 제1 정보와 상기 제2 정보를 기초로 하나 이상의 피처 정보를 생성하는 피처 정보 생성부; 및
    상기 하나 이상의 피쳐 정보를 미리 학습된 문서 분리 판단 모델로 입력하여 상기 제1 페이지와 상기 제2 페이지가 상기 하나 이상의 문서 중 동일한 문서에 포함된 것인지를 판단하는 동일 문서 판단부;를 포함하는 것을 특징으로 하는 문서 분리 장치.
  13. 제12항에 있어서,
    상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 직선에 대한 정보이고,
    상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 직선에 대한 정보인 것을 특징으로 하는 문서 분리 장치.
  14. 제12항에 있어서,
    상기 제1 정보는 상기 제1 페이지에 포함되는 하나 이상의 단어에 대한 정보이고,
    상기 제2 정보는 상기 제2 페이지에 포함되는 하나 이상의 단어에 대한 정보인 것을 특징으로 하는 문서 분리 장치.
  15. 제14항에 있어서,
    상기 피쳐 정보에는,
    상기 제1 페이지와 상기 제2 페이지의 하나 이상의 직선에 대한 윤곽 정보를 기초로 산출되는 제1 피쳐 정보와,
    상기 제1 페이지와 상기 제2 페이지의 하나 이상의 단어에 대한 위치 정보를 기초로 산출되는 제2 피쳐 정보가 포함되는 것을 특징으로 하는 문서 분리 장치.
KR1020220166424A 2022-12-02 2022-12-02 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램 KR20240082614A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220166424A KR20240082614A (ko) 2022-12-02 2022-12-02 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220166424A KR20240082614A (ko) 2022-12-02 2022-12-02 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
KR20240082614A true KR20240082614A (ko) 2024-06-11

Family

ID=91471273

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220166424A KR20240082614A (ko) 2022-12-02 2022-12-02 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR20240082614A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200008189A (ko) 2018-07-16 2020-01-28 주식회사 한글과컴퓨터 전자 문서에 템플릿을 적용하는 전자 장치 및 그의 동작 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200008189A (ko) 2018-07-16 2020-01-28 주식회사 한글과컴퓨터 전자 문서에 템플릿을 적용하는 전자 장치 및 그의 동작 방법

Similar Documents

Publication Publication Date Title
JP6838209B1 (ja) 文書画像解析装置、文書画像解析方法およびプログラム
CN110363102B (zh) 一种pdf文件的对象识别处理方法及装置
US11783610B2 (en) Document structure identification using post-processing error correction
US20070237401A1 (en) Converting digital images containing text to token-based files for rendering
US20180330181A1 (en) Method for line and word segmentation for handwritten text images
CN111340037B (zh) 文本版面分析方法、装置、计算机设备和存储介质
CN113343740B (zh) 表格检测方法、装置、设备和存储介质
JP2009020888A (ja) インビジブルジャンクションを生成する方法及びシステム
CN110942004A (zh) 基于神经网络模型的手写识别方法、装置及电子设备
KR101549792B1 (ko) 문서 자동 작성 장치 및 방법
CN115210747B (zh) 用于数字图像处理的方法和系统
US9519404B2 (en) Image segmentation for data verification
US9047528B1 (en) Identifying characters in grid-based text
US9323726B1 (en) Optimizing a glyph-based file
US10095677B1 (en) Detection of layouts in electronic documents
Nayak et al. Odia running text recognition using moment-based feature extraction and mean distance classification technique
US20210117666A1 (en) Multiple channels of rasterized content for page decomposition using machine learning
Tomovic et al. Aligning document layouts extracted with different OCR engines with clustering approach
KR102138748B1 (ko) 라인 단위의 문자열을 검출 및 정렬하기 위한 방법 및 시스템
KR20240082614A (ko) 문서 분리 방법, 장치, 시스템 및 컴퓨터 프로그램
Lee et al. Deep learning-based digitalization of a part catalog book to generate part specification by a neutral reference data dictionary
Jain et al. TSR-DSAW: table structure recognition via deep spatial association of words
US20220292313A1 (en) Information processing apparatus and model generation method
JP2016532190A (ja) 文書フォーマット変換装置及び方法
Chiou et al. The effects of joint and link flexibilities on the dynamic stability of force-controlled manipulators