KR102655430B1 - 테이블 생성 방법 및 시스템 - Google Patents
테이블 생성 방법 및 시스템 Download PDFInfo
- Publication number
- KR102655430B1 KR102655430B1 KR1020210023275A KR20210023275A KR102655430B1 KR 102655430 B1 KR102655430 B1 KR 102655430B1 KR 1020210023275 A KR1020210023275 A KR 1020210023275A KR 20210023275 A KR20210023275 A KR 20210023275A KR 102655430 B1 KR102655430 B1 KR 102655430B1
- Authority
- KR
- South Korea
- Prior art keywords
- image
- function
- cells
- category
- cell
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 122
- 230000006870 function Effects 0.000 description 125
- 238000013473 artificial intelligence Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 238000012015 optical character recognition Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000005192 partition Methods 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 238000007405 data analysis Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 241001408627 Agriopis marginaria Species 0.000 description 1
- 241000282412 Homo Species 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/177—Editing, e.g. inserting or deleting of tables; using ruled lines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04817—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0486—Drag-and-drop
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/174—Form filling; Merging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/10—Image acquisition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- User Interface Of Digital Computer (AREA)
- Document Processing Apparatus (AREA)
Abstract
본 발명은 테이블 생성 어플리케이션을 이용하여 테이블을 생성하는 방법 및 시스템에 관한 것이다. 본 발명에 따른 테이블 생성 어플리케이션의 테이블 생성 방법은, 상기 어플리케이션에서 제공되는 작업 영역에 테이블을 포함하는 이미지를 출력하는 단계, 상기 작업 영역의 일 영역에 포함된 복수의 기능 아이콘 중 어느 하나의 기능 아이콘을 선택받는 단계, 상기 어느 하나의 기능 아이콘이 선택된 후 상기 이미지에 가해지는 기 설정된 방식의 입력에 근거하여, 상기 기능 아이콘에 매칭된 테이블 구성 요소에 해당하는 가이드 정보를 출력하는 단계 및 상기 가이드 정보를 이용하여, 상기 이미지에 포함된 테이블과 대응되는 구조를 갖는 테이블을 생성하는 단계를 포함할 수 있다.
Description
본 발명은 테이블 생성 어플리케이션을 이용하여 테이블을 생성하는 방법 및 시스템에 관한 것이다.
인공지능의 사전적 의미는, 인간의 학습능력과 추론능력, 지각능력, 자연언어의 이해능력 등을 컴퓨터 프로그램으로 실현한 기술이라 할 수 있다. 이러한 인공지능은 머신러닝에 인간의 뇌를 모방한 신경망 네트워크를 더한 딥러닝으로 인하여 비약적인 발전을 이루었다.
딥러닝(deep learning)이란, 컴퓨터가 인간처럼 판단하고 학습할 수 있도록 하고, 이를 통해 사물이나 데이터를 군집화하거나 분류하는 기술로서, 최근에는 텍스트 데이터 뿐만 아니라 영상 데이터에 대한 분석까지 가능해져, 매우 다양한 산업분야에 적극적으로 활용되고 있다.
이러한, 인공지능의 발달로 사무자동화(office automation) 분야에 있어서도 다양한 자동화가 이루어지고 있다. 특히, 사무자동화 분야에서는 종이(paper)에 인쇄된 콘텐츠를 인공지능을 활용한 영상 데이터 분석 기술에 기반하여 데이터화 하는데 많은 노력을 기울이고 있다. 그 일환으로서, 사무자동화 분야에서는 종이 문서를 이미지화 하여, 이미지에 포함된 콘텐츠를 분석하는 이미지 분석 기술(또는 영상 데이터에 대한 분석 기술)을 통하여, 문서에 포함된 콘텐츠를 데이터화하고 있으며, 이 경우 문서에 포함된 콘텐츠의 특성에 맞게 이미지를 분석하는 기술이 필요하다.
예를 들어, 테이블(table, 표)을 포함하는 문서를 데이터화 하는 경우, 테이블의 형식, 테이블 내에 포함된 텍스트의 내용 및 테이블에 포함된 텍스트의 위치 등과 같이, 테이블을 둘러싼 다양한 요소들에 대한 정확한 분석이 필요하다.
이에, 이미지에 포함된 테이블을 재현하기 위하여, 이미지에 포함된 데이터를 분석하는 다양한 어플리케이션이 개발되고 있다. 예를 들어, “ROSSUM(https://rossum.ai/)” 어플리케이션에서는 이미지에 포함된 테이블의 텍스트 데이터를 추출 및 라벨링 하는 기능을 제공하고 있다.
그러나, 현재까지 개발된 어플리케이션은 이미지에 포함된 테이블의 구조 및 텍스트 데이터를 추출하는 수준이므로, 이미지에 포함된 테이블의 구조 및 텍스트 데이터 간의 관계성까지 정확하게 재현할 수 있는 어플리케이션의 개발이 계속적으로 필요하다.
본 발명은, 이미지에 포함된 테이블과 동일한 구성을 갖는 테이블을 생성할 수 있는 테이블 생성 방법 및 시스템을 제공하기 위한 것이다.
나아가, 본 발명은 이미지에 나타나지 않는 비시각적 특성까지 고려하여 이미지에 포함된 테이블과 동일한 구성을 갖는 테이블을 보다 쉽고, 직관적으로 생성할 수 있는 사용자 환경을 제공하기 위한 것이다.
나아가, 본 발명은 테이블에 포함된 데이터 간의 관계성을 제공할 수 있는 테이블 생성 방법 및 시스템을 제공하기 위한 것이다.
위에서 살펴본 과제를 해결하기 위하여, 본 발명에 따른 테이블 생성 어플리케이션의 테이블 생성 방법은, 상기 어플리케이션에서 제공되는 작업 영역에 테이블을 포함하는 이미지를 출력하는 단계, 상기 작업 영역의 일 영역에 포함된 복수의 기능 아이콘 중 어느 하나의 기능 아이콘을 선택받는 단계, 상기 어느 하나의 기능 아이콘이 선택된 후 상기 이미지에 가해지는 기 설정된 방식의 입력에 근거하여, 상기 기능 아이콘에 매칭된 테이블 구성 요소에 해당하는 가이드 정보를 출력하는 단계 및 상기 가이드 정보를 이용하여, 상기 이미지에 포함된 테이블과 대응되는 구조를 갖는 테이블을 생성하는 단계를 포함할 수 있다.
나아가, 본 발명에 따른 전자기기의 디스플레이부에 출력되는 작업영역에서 테이블을 생성하는 시스템의 제어부(140)는, 상기 작업 영역에 테이블을 포함하는 이미지를 출력하고, 사용자로부터, 상기 작업 영역의 일 영역에 포함된 복수의 기능 아이콘 중 어느 하나의 기능 아이콘을 선택받고, 상기 어느 하나의 기능 아이콘이 선택된 후 상기 이미지에 가해지는 기 설정된 방식의 입력에 근거하여, 상기 기능 아이콘에 매칭된 테이블 구성 요소에 해당하는 가이드 정보를 출력하며, 상기 가이드 정보를 이용하여, 상기 이미지에 포함된 테이블과 대응되는 구조를 갖는 테이블을 생성하는 것을 특징으로 한다.
나아가, 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 기록매체에 저장 가능한 프로그램은, 상기 어플리케이션에서 제공되는 작업 영역에 테이블을 포함하는 이미지를 출력하는 단계, 상기 작업 영역의 일 영역에 포함된 복수의 기능 아이콘 중 어느 하나의 기능 아이콘을 선택받는 단계, 상기 어느 하나의 기능 아이콘이 선택된 후 상기 이미지에 가해지는 기 설정된 방식의 입력에 근거하여, 상기 기능 아이콘에 매칭된 테이블 구성 요소에 해당하는 가이드 정보를 출력하는 단계 및 상기 가이드 정보를 이용하여, 상기 이미지에 포함된 테이블과 대응되는 구조를 갖는 테이블을 생성하는 단계를 수행하도록 하는 명령어들을 포함할 수 있다.
위에서 살펴본 것과 같이, 본 발명에 따른 테이블 생성 방법 및 시스템은, 사용자 입력에 기반하여 이미지에 포함된 테이블의 구성 요소를 추출할 수 있는 사용자 환경을 제공할 수 있다. 이를 통해, 본 발명에 따른 테이블 생성 방법 및 시스템은, 테이블에 포함된 텍스트 데이터 뿐만 아니라, 테이블의 구조를 이루는 구성 요소들까지 추출이 가능하며, 결과적으로 이미지에 포함된 테이블과 동일한 구조 및 동일한 데이터를 갖는 테이블을 생성하는 것이 가능하다.
나아가, 본 발명에 따른 테이블 생성 방법 및 시스템은, 이미지에 포함된 테이블의 구성 요소에 의해 정의되는 셀들을 특정하고, 사용자 입력에 근거하여 셀들 간의 관계성을 부여하는 것을 통하여, 각 셀들에 포함된 데이터들이 유기적으로 분석될 수 있는 사용자 환경을 제공할 수 있다.
따라서, 본 발명에 따른 테이블 어플리케이션에 따른 테이블 생성 방법은, 이미지에 포함된 테이블의 구성 요소를 추출하는 기능 및 테이블에 포함된 데이터들 간의 관계성을 부여하는 기능을 제공함으로써, 이미지에 포함된 테이블의 시각적인 특성을 재현함은 물론, 데이터들 간의 관계적인 특성까지 재현할 수 있다.
도 1은 본 발명에 따른 테이블 생성 시스템을 설명하기 위한 개념도이다.
도 2는 테이블의 구성요소를 설명하기 위한 개념도이다.
도 3a 및 도 3b는 본 발명에 따른 테이블 생성 어플리케이션을 설명하기 위한 개념도이다.
도 4는 본 발명에 따른 테이블 생성 방법을 설명하기 위한 흐름도이다.
도 5, 도 6, 도 7, 도 8, 도 9, 도 10, 도 11, 도 12, 도 13, 도 14 및 도 15는 위에서 살펴본 어플리케이션을 통해 제공되는 사용자 환경에서 테이블을 생성하는 방법을 설명하기 위한 개념도들이다.
도 2는 테이블의 구성요소를 설명하기 위한 개념도이다.
도 3a 및 도 3b는 본 발명에 따른 테이블 생성 어플리케이션을 설명하기 위한 개념도이다.
도 4는 본 발명에 따른 테이블 생성 방법을 설명하기 위한 흐름도이다.
도 5, 도 6, 도 7, 도 8, 도 9, 도 10, 도 11, 도 12, 도 13, 도 14 및 도 15는 위에서 살펴본 어플리케이션을 통해 제공되는 사용자 환경에서 테이블을 생성하는 방법을 설명하기 위한 개념도들이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소에는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
앞서 살펴본 것과 같이, 인공지능의 발달로 다양한 형태로 사무자동화(office automation)가 이루어지고 있으며, 업무의 효율을 위하여, 종이 문서에 포함된 테이블(table, 표)을, 종이 문서에 포함된 테이블 형식 그대로 디지털화(데이터화) 해야 하는 니즈가 점차적으로 높아지고 있다.
예를 들어, 다양한 종류의 영수증(領收證, receipt)과 같은 문서는 테이블을 포함하고 있으며, 보험사, 병원 등에서는 대량의 종이 문서에 포함된 테이블을 디지털화된 데이터로서 처리하여, 전산화할 필요가 있다.
이에 본 발명은, 이미지에 포함된 테이블과 동일한 구성을 갖는 테이블을 생성할 수 있는 테이블 생성 어플리케이션을 제공하는 것으로서, 특히, 이러한 테이블 생성 어플리케이션을 통한 테이블 생성 방법 및 테이블 어플리케이션을 구성하는 테이블 생성 시스템을 제공하는 것이다.
본 발명에 따른 테이블 생성 어플리케이션에 따른 테이블 생성 방법 및 시스템은, 이미지에 포함된 테이블의 구성 요소를 추출하는 기능 및 테이블에 포함된 데이터들 간의 관계성을 부여하는 기능을 제공함으로써, 이미지에 포함된 테이블의 시각적인 특성을 재현함은 물론, 데이터들 간의 관계적인 특성까지 재현할 수 있다.
이하에서는, 테이블 생성 어플리케이션을 이용하여, 종이 문서에 포함된 테이블과 동일한 구성을 갖는 테이블을 생성하는 방법 및 시스템에 대하여 첨부된 도면과 함께 보다 구체적으로 살펴본다.
도 1은 본 발명에 따른 테이블 생성 시스템을 설명하기 위한 개념도이고, 도 2는 테이블의 구성요소를 설명하기 위한 개념도이다. 나아가, 도 3a 및 도 3b는 본 발명에 따른 테이블 생성 어플리케이션을 설명하기 위한 개념도이고, 도 4는 본 발명에 따른 테이블 생성 방법을 설명하기 위한 흐름도이다. 또한, 도 5, 도 6, 도 7, 도 8, 도 9, 도 10, 도 11, 도 12, 도 13, 도 14 및 도 15는 위에서 살펴본 어플리케이션을 통해 제공되는 사용자 환경에서 테이블을 생성하는 방법을 설명하기 위한 개념도들이다.
본 발명에 따른 테이블 생성 어플리케이션은 도 1에 도시된 이미지(1000)에 포함된 테이블(1100, 1200)과 동일 또는 대응되는 구조를 갖는 테이블을 생성할 수 있는 사용자 환경을 제공할 수 있다.
즉, 본 발명에 따른 테이블 생성 시스템(100)은 어플리케이션 또는 소프트웨어의 형태로 구현될 수 있다. 본 발명에 테이블 생성 시스템 (100)의 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시 예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 작동을 수행할 수 있다.
이러한 테이블 생성 어플리케이션은 도 1에 도시된 테이블 생성 시스템(100)에 의하여 구현되며, 이하에서는 테이블 생성 시스템(100)의 구성에 대하여 보다 구체적으로 살펴본다.
본 발명에 따른 테이블 생성 시스템(100)은 이미지(1000)로부터 테이블(1100, 1200)을 구성하는 테이블 구성 요소(또는 구성 성분)을 인식하고, 인식된 구성 요소에 기반하여, 이미지(1000)에 포함된 테이블(1100, 1200)과 동일한 테이블을 생성할 수 있다.
이러한 테이블 생성 시스템(100)은 이미지(1000)에 포함된 테이블(1100, 1200)의 수에 관계없이, 이미지(1000)에 포함된 테이블(1100, 1200)과 동일 또는 대응되는 구성 요소를 갖는 테이블을 생성할 수 있다.
여기에서, 이미지(1000)는 종이 문서를 스캔한 것에 의하여 획득되는 이미지이거나, 기타 다른 다양한 방법으로 획득된 이미지일 수 있다.
한편, 본 발명에 따른 테이블 생성 시스템(100)에 의해 생성된 테이블은 다양한 명칭으로 명명될 수 있으며, 예를 들어, 복원 테이블 또는 재현 테이블 등으로 명명하는 것이 가능하다.
본 명세서에서 언급되는 “테이블(table)”은, 표(表)라고도 명명될 수 있으며, 어떤 내용을 일정한 형식 또는 순서에 따라 나타낸 것을 의미할 수 있다. 도 1b를 참조하여 테이블의 구성 요소에 대하여 살펴보면, 테이블(200)은 적어도 하나의 셀(210)을 포함하여 구성될 수 있다. 즉, 테이블(200)은 적어도 하나의 셀(cell) 또는 공간(또는 영역)을 포함하고 있으며, 테이블은 이러한 셀(210) 내에 정보를 포함하도록 구성된다.
이러한 셀(cell, 210)은 테이블의 구성 요소에 의하여 구획되는 공간을 의미할 수 있다. 테이블의 구성 요소는, 바깥쪽 테두리 요소(201), 행(row) 요소(202) 및 열(column) 요소(203) 중 적어도 하나를 포함할 수 있다.
바깥쪽 테두리 요소(201)는 테이블(200)의 크기 및 형상을 결정하는 요소로서, 반드시 시각적으로 나타내어질 필요는 없다.
행 요소(202)는 바깥쪽 테두리 요소(201) 내에 포함되는 가로 라인(line 또는 선분)으로서, 테이블(200)의 구성에 따라, 테이블(200) 내에는 하나 또는 그 이상의 가로 라인이 구비될 수 있다. 행 요소(202)는 바깥쪽 테두리 요소(201)의 적어도 일부(가로 라인에 해당하는 테두리)를 포함할 수 있다.
열 요소(203)는 바깥쪽 테두리 요소(201) 내에 포함되는 세로 라인(line 또는 선분)으로서, 테이블(200)의 구성에 따라, 테이블(200) 내에는 하나 또는 그 이상의 세로 라인이 구비될 수 있다. 열 요소(203)는 바깥쪽 테두리 요소(201)의 적어도 일부(세로 라인에 해당하는 테두리)를 포함할 수 있다.
테이블(200)에 포함되는 셀의 개수, 셀의 크기 또는 셀의 위치 등은 가로 라인 및 세로 라인의 수, 배치 관계 등에 근거하여 다양하게 변형될 수 있으며, 셀들 간의 병합에 의해서도 다양하게 변형될 수 있다.
테이블(200) 및 테이블(200) 내에 구비된 셀의 형상은 사각형(square)의 형상으로 이루어진다.
테이블(200)에 포함된 셀(210)은, 적어도 4개의 라인(line, 선분)에 의해 정의될 수 있다. 즉, 테이블에 포함된 셀(210)은 4개의 라인(a, b, c, d)으로 둘러싸인 사각형으로 이루어질 수 있다. 이와 같이, 하나의 사각 형상의 셀을 형성하기 위해서는, 최소 4개의 라인이 필요하며, 이는, 2개의 가로 라인(또는 수평 라인(horizontal line, 도면 부호 “b, d” 참조)) 및 2개의 세로 라인(또는 수직 라인(vertical line, 도면 부호 “a, c” 참조))으로 이루어질 수 있다.
한편, “라인”의 용어는 “선분” 또는 “모서리(edge)”라고도 명명될 수 있다.
이와 같이, 사각 형상의 셀(210)은, 2개의 가로 라인(b, d) 및 2개의 세로 라인(a, c)의 적어도 일부가 상호 교차하는 것에 의하여 형성될 수 있다.
따라서, 테이블은 최소 4개의 라인을 포함하며, 가로 라인의 수, 세로 라인의 수, 라인 간의 간격, 라인의 배열 위치에 따라, 셀의 개수, 셀의 크기, 셀의 위치 등이 정의될 수 있다.
나아가, 본 발명에서 설명되는 테이블을 구성하는 구성 성분들은, 테이블을 구성하는 라인(가로 라인 및 세로 라인) 및 테이블을 구성하는 라인들이 교차(交叉)하면서 형성되는 코너(corner, 또는 꼭지점, 도면 부호 “e, f, g, h” 참조)를 포함할 수 있다.
모든 테이블은 최소 4개의 코너를 가지며, 이는 테이블의 가장 바깥쪽 테두리에 포함되는 코너일 수 있다. 나아가, 테이블에 포함된 코너의 개수는 테이블에 포함된 셀의 개수에 따라 달라진다.
한편, 도 1에 도시된 것과 같이, 본 발명에 따른 테이블 생성 시스템(100)은 수신부(110), 저장부(120), OCR부(130) 및 제어부(140) 중 적어도 하나를 포함할 수 있다.
수신부(110)는 테이블(1100)이 포함된 이미지(1000)를 수신하는 수단으로서, 통신부, 스캔부 및 입력부 중 적어도 하나를 포함하여 구성되거나, 기타 이미지(1000)를 수신할 수 있는 수단으로 이루어질 수 있다.
테이블 생성 시스템(100)은 수신부(110)를 통해 수신한 이미지(1000)에 포함된 테이블(1100, 1200)에 근거하여, 분석하여, 이미지(1000)에 포함된 테이블(1100, 1200)과 동일한 테이블을 생성할 수 있다.
다음으로 저장부(120)는, 본 발명에 따른 다양한 정보를 저장하도록 이루어질 수 있다. 저장부(120)의 종류는 매우 다양할 수 있으며, 적어도 일부는, 외부 서버(150, 클라우드 서버(151) 및 데이터베이스(database: DB, 152) 중 적어도 하나)를 의미할 수 있다. 즉, 저장부(120)는 본 발명과 관련된 정보가 저장되는 공간이면 충분하며, 물리적인 공간에 대한 제약은 없는 것으로 이해될 수 있다.
저장부(120)에는 i)테이블(1100, 1200)을 포함하는 이미지(1000) 및 이와 관련된 데이터, ii) 테이블(1100, 1200)을 재구성하기 위하여 특정된 구성 요소(바깥쪽 테두리, 라인, 코너 등) 및 이와 관련된 데이터, iii) 테이블(1100, 1200)에 포함된 콘텐츠(예를 들어, 텍스트, 이미지 등) 데이터 중 적어도 하나가 저장될 수 있다.
다음으로, OCR(Optical Character Reader, 130)부는 이미지(1000)에 포함된 콘텐츠를 인식하는 수단으로서, 다양한 콘텐츠 인식 알고리즘 중 적어도 하나를 통하여 이미지(1000)에 포함된 콘텐츠를 인식할 수 있다. OCR부(130)는 인공지능에 기반한 알고리즘을 이용하여, 콘텐츠를 인식할 수 있다. 여기에서 콘텐츠는 텍스트(문자)를 포함할 수 있다.
OCR부는, 이미지에 포함된 텍스트 및 텍스트의 위치 정보를 추출할 수 있다. 여기에서, 텍스트의 위치 정보는 수신부(110)를 통해 입력된 이미지(1000) 내에서 텍스트가 어디에 위치하는지 또는 테이블(1100, 1200) 내에서 텍스트가 어디에 위치하는지에 대한 정보를 포함할 수 있다.
다음으로 제어부(140)는 본 발명과 관련된 테이블 생성 시스템(100)의 전반적인 동작을 제어하도록 이루어질 수 있다. 제어부(140)는 인공지능 알고리즘을 처리 가능한 프로세서(processor, 또는 인공지능 프로세서)를 포함할 수 있다. 제어부(140)는 딥러닝 알고리즘에 기반하여, 이미지(1000)로부터 테이블(1100)을 인식하고, 이미지(1000)에 포함된 테이블(1100, 1200)과 동일한 셀의 구성을 갖는 테이블을 생성할 수 있다.
나아가, 제어부(140)는 도 4a 및 도 4b에 도시된 것과 같이, 테이블을 생성하기 위한 작업 영역(300)을 제공하며, 이러한 작업 영역(300)은 테이블을 생성하기 위한 “사용자 환경” 또는 “사용자 인터페이스”라고도 명명될 수 있다.
이러한 작업 영역(300)은 전자기기의 디스플레이부 상에 출력(또는 제공)될 수 있다. 나아가, 제어부(140)는 전자기기에 구비된 또는 전자기기와 연동하는 사용자 입력부(예를 들어, 터치 스크린, 마우스 등)를 통해 수신되는 사용자 입력에 근거하여, 테이블 생성을 수행할 수 있다.
한편, 본 발명에서 작업 영역(300)이 출력되는 전자기기의 종류에는 특별한 제한이 없으며, 본 발명에 따른 테이블 생성 어플리케이션이 구동이 가능하기만 하면 된다. 예를 들어, 전자기기는, 스마트폰(smart phone), 휴대폰, 태블릿 PC, 컴퓨터, 노트북, 디지털방송용 단말, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 스마트 미러(smart mirror) 및 스마트 TV(smart TV) 중 적어도 하나가 될 수 있다.
본 발명에서는, 전자기기 또는 전자기기에 구비되는 디스플레이부, 사용자 입력부에 대하여 별도의 도면 부호를 부여하지 않는다. 그러나, 본 발명에서 설명되는 작업 영역(300)은 전자기기의 디스플레이부에 출력되며, 사용자 입력은 전자기기에 구비되거나, 전자기기와 연동하는 사용자 입력부를 통하여 수신됨은 당업자에게 자명할 것이다.
한편, 본 발명에 따른 테이블 생성 방법 및 시스템은 테이블 생성 어플리케이션에서 제공되는 사용자 환경(또는 사용자 인터페이스)에 기반하여, 테이블을 생성할 수 있다. 즉, 테이블 생성 어플리케이션은 이미지(1000)에 포함된 테이블(1100, 1200)과 동일 또는 대응되는 구조를 갖는 테이블을 생성할 수 있는 사용자 인터페이스를 제공할 수 있다. 이러한 사용자 인터페이스는 “테이블 생성 툴(TOOL)”이라고도 명명될 수 있다.
테이블 생성 어플리케이션은 도 3a 및 도 3b에 도시된 것과 같이, 전자기기를 통해 사용자로부터 입력되는 사용자 입력에 근거하여 테이블 생성 작업을 수행할 수 있는 작업 영역(300)을 제공할 수 있다.
작업 영역(300)에 대하여 먼저 살펴보면, 작업 영역(300)은 복수의 영역으로 구분되거나, 테이블 생성을 위한 다양한 정보가 출력될 수 있다.
작업 영역(300)에 포함되는 영역 및 정보는 사용자의 선택이나, 현재 작업의 상태에 따라, 사라지거나, 변경될 수 있다.
먼저, 작업 영역(300)에는 헤더 영역(header, 310)이 포함될 수 있다. 헤더 영역(310)은 메뉴 영역 등으로도 명명될 수 있으며, 적어도 하나의 기능 아이콘이 포함될 수 있다. 헤더 영역(310)에는, 사용자 계정에 로그인 하기 위한 로그인 기능이 할당된 기능 아이콘 및 복수의 과정으로 이루어지는 테이블 생성 작업 과정(또는 태스크(task))에 각각 매칭된 기능 아이콘 중 적어도 하나가 포함될 수 있다.
여기에서, 복수의 테이블 생성 작업 과정(또는 태스크)는 i)이미지(1000)에 포함된 테이블(1100, 1200)의 구성요소를 특정하는 작업 과정, ii)이미지(1000)에 포함된 테이블(1100, 1200)의 구성요소의 특정을 검증하는 과정 및 iii)이미지(1000)에 포함된 테이블(1100, 1200)에 포함된 셀들 간의 관계를 특정하는 과정을 포함할 수 있다.
헤더 영역(310)에는 i)이미지(1000)에 포함된 테이블(1100, 1200)의 구성요소를 특정하는 작업 과정에 대응되는 기능 아이콘(도 3a에서 310 영역 중 “Table”로 명명된 아이콘), ii)이미지(1000)에 포함된 테이블(1100, 1200)의 구성요소의 특정을 검증하는 과정에 대응되는 기능 아이콘(도 3a에서 310 영역 중 “Table Inspection”으로 명명된 아이콘) 및 iii)이미지(1000)에 포함된 테이블(1100, 1200)에 포함된 셀들 간의 관계를 특정하는 과정에 대응되는 기능 아이콘(도 3a에서 310 영역 중 “Labeling”으로 명명된 아이콘) 중 적어도 하나가 포함될 수 있다.
사용자는 헤더 영역(310)에서 서로 다른 작업 과정에 대응되는 기능 아이콘 중 어느 하나를 선택하여, 선택된 기능 아이콘에 해당하는 작업 과정을 진행할 수 있다.
다음으로, 작업 영역(300)에는 테이블의 구성요소를 특정하거나, 테이블에 포함된 데이터들 간의 관계를 특정하기 기능이 할당된 기능 아이콘이 포함되는 툴바 영역(tollbar, 320, 370)을 포함할 수 있다.
툴바 영역(320, 370)에 포함되는 기능 아이콘의 종류는, 현재 작업 과정이 위에서 살펴본 복수의 테이블 생성 작업 과정 중 어느 과정에 해당하는지에 따라 달라질 수 있다.
예를 들어, 도 3a에 도시된 것과 같이, 현재 작업 과정이, 이미지(1000)에 포함된 테이블(1100, 1200)의 구성 요소를 특정하는 작업 과정인 경우, 툴바 영역(320)에는, 테이블(1100, 1200)의 구성 요소(예를 들어, 바깥쪽 테두리 요소, 행 요소, 열 요소 등)를 특정하는 기능이 매칭된 적어도 하나의 기능 아이콘(321, 322, 323, 324, 325, 326)이 포함될 수 있다.
다른 예로서, 도 3b에 도시된 것과 같이, 현재 작업 과정이, 이미지(1000)에 포함된 테이블(1100, 1200)에 포함된 셀들 간의 관계를 특정하는 과정인 경우, 툴바 영역(370)에는 테이블(1100, 1200)에 포함된 셀들 간의 관계를 특정하는 기능이 매칭된 적어도 하나의 기능 아이콘(371, 372, 373)이 포함될 수 있다.
본 발명에서 “셀들 간의 관계를 특정한다”고 함은, 테이블에 포함된 복수의 셀 중 서로 관련된 데이터를 포함하는 셀들을 특정(또는 그룹핑)하는 과정으로도 이해되어 질 수 있다.
여기에서, 서로 관련된 데이터를 포함하는 셀들 중 적어도 하나는 범주 셀이고, 다른 적어도 하나는 데이터 셀로 구성될 수 있다.
여기에서, 범주는 동일하거나 유사한 성질 또는 의미를 기준으로 구분되는 것으로서, 카테고리(category)라고도 명명될 수 있다. 동일한 범주에 속한 데이터는, 서로 동일한 의미, 서로 동일한 종류, 또는 서로 동일한 소속에 해당하는 데이터일 수 있다. 즉, 데이터 셀에 포함된 데이터는 범주 셀에 대응되는 카테고리에 해당하는 데이터일 수 있다.
이 경우, 데이터 셀에 포함된 텍스트의 의미는 범주 셀에 포함되는 텍스트의 의미의 하위개념에 해당할 수 있다.
범주 셀에는, 범주의 이름 또는 범주의 이름과 관련된 데이터가 포함되며, 데이터 셀은 범주 셀에 포함된 범주의 이름에 속한 데이터가 포함될 수 있다. 여기에서 범주의 이름은 카테고리 명으로도 이해되어 질 수 있다
한편, 툴바 영역(320)에 포함되는 기능 아이콘의 변경은, 위에서 살펴본 헤더 영역(310)에서 작업 과정에 대응되는 기능 아이콘 중 어느 아이콘이 선택되는지에 근거하여 이루어질 수 있다.
예를 들어, 헤더 영역(310)에서, 이미지(1000)에 포함된 테이블(1100, 1200)의 구성요소를 특정하는 작업 과정에 대응되는 기능 아이콘(도 3a에서 310 영역 중 “Table”로 명명된 아이콘)이 선택된 경우, 툴바 영역(320)에는 테이블(1100, 1200)의 구성 요소(예를 들어, 바깥쪽 테두리 요소, 행 요소, 열 요소 등)를 특정하는 기능이 매칭된 적어도 하나의 기능 아이콘(321, 322, 323, 324, 325, 326)이 출력될 수 있다.
나아가, 헤더 영역(310)에서, 이미지(1000)에 포함된 테이블(1100, 1200)에 포함된 셀들 간의 관계를 특정하는 과정에 대응되는 기능 아이콘(도 3b에서 310 영역 중 “Labeling”으로 명명된 아이콘)이 선택된 경우, 툴바 영역(370)에는 테이블(1100, 1200)에 포함된 셀들 간의 관계를 특정하는 기능이 매칭된 적어도 하나의 기능 아이콘(371, 372, 373)이 출력될 수 있다.
나아가, 도 3a 및 도 3b에 도시된 것과 같이, 작업 영역(300)은 이미지(1000)의 크기, 방향 등을 제어하기 위한 적어도 하나의 기능 아이콘이 포함된 영역(330)을 더 포함할 수 있다.
나아가, 도 3a 및 도 3b에 도시된 것과 같이, 작업 영역(300)은 이미지(1000)가 포함되고, 작업 과정의 결과물(또는 작업물)이 시각적으로 제공되는 에디터 영역(editor pane, 340)을 더 포함할 수 있다.
나아가, 도 3a 및 도 3b에 도시된 것과 같이, 작업 영역(300)은 작업 과정 중에 특정되는 테이블(1100, 1200)에 대한 정보 또는 테이블(1100, 1200)에서 추출된 컨텐츠(또는 텍스트)에 대한 정보가 출력되는 속성 영역(property pane, 350)을 더 포함할 수 있다.
한편, 이상의 설명에서는, 설명의 편의를 위하여 작업 영역(300)에 포함되는 영역들을 헤더 영역(310), 툴바 영역(320, 370), 에디터 영역(340), 속성 영역(350) 등으로 명명하였으나, 이는 일 예시일 뿐, 영역들의 명칭을 다양하게 변경되거나, “제1 영역”, “제2 영역”과 같이 일반인 명칭으로 명명될 수 있음은 물론이다.
이하에서는, 위에서 살펴본 작업 영역(300)의 설명을 참조하여, 테이블 생성 어플리케이션에서 테이블을 생성하는 방법에 대하여 보다 구체적으로 살펴본다. 특히, 이하에서는, 순서도와 함께, 테이블의 구성 요소를 특정하는 방법에 대하여 먼저 살펴보도록 한다.
본 발명에 따른 테이블 생성 방법에서는, 테이블(1100, 1200)을 포함하는 이미지(1000, 도 1 참조)를 출력하는 과정이 진행될 수 있다(S410).
앞서, 살펴본 것과 같이, 테이블(1100, 1200)이 포함된 이미지(1000)는 다양한 루트를 통하여 수신될 수 있다.
보다 구체적으로, 이러한 이미지(1000)는 도 3a 및 도 3b에 도시된 것과 같이, 테이블 생성 어플리케이션에서 제공되는 작업 영역(300) 상에 출력될 수 있다.
특히, 이미지(1000)는 작업 영역(300) 중 에디터 영역(340)에 출력될 수 있으며, 이하에서는, 이에 대한 명확한 구분 없이, 이미지(1000)가 작업 영역(300)에 포함 또는 출력된다고 표현하기로 한다.
한편, 도 5에 도시된 것과 같이, 제어부(140)는 작업 영역(300)상에 이미지(1000)가 출력된 상태에서, 특정 기능 아이콘(321)이 선택된 후, 이미지(1000)에 가해지는 사용자 입력에 근거하여, 이미지(1000)를 회전시킬 수 있다. 여기에서, 특정 기능 아이콘(321)은 이미지(1000)를 회전시키는 기능 이 매칭된 아이콘일 수 있다. 나아가, 상기 사용자 입력은, 이미지(1000)의 일 영역을 선택하는 클릭 입력 및 클릭 입력이 유지된 상태에서 가해지는 드래그 입력일 수 있다.
제어부(140)는 드래그 입력의 정도에 따라, 이미지(1000)를 회전시킬 수 있다. 나아가, 제어부(140)는 상기 드래그 입력이 가해지면, 테이블(1100, 1200)이 정방향으로 표시되도록 이미지(1000)를 적절히 회전시킬 수 있다.
이 경우, 제어부(140)는 이미지(1000)에 포함된 테이블(1100, 1200)을 인식하고, 인식된 테이블에 해당하는 사각형이 기울어지게 표시되지 않도록, 이미지(1000)를 회전시킬 수 있다.
이러한 이미지(1000)의 회전 과정은 필수적인 과정이 아니며, 필요에 따라 진행될 수 있다.
위에서 살펴본 것과 같이 작업 영역(300)에 테이블(1100, 1200)를 포함하는 이미지가 출력되면, 작업 영역의 일 영역에 포함된 복수의 기능 아이콘 중 어느 하나의 기능 아이콘을 선택받는 과정이 진행될 수 있다(S420).
도 6에 도시된 것과 같이, 복수의 기능 아이콘(321 내지 326)은 테이블의 구성 요소(또는 테이블 구성 요소)를 특정하거나, 특정된 구성 요소를 기반으로 구획된 셀을 병합하는 기능에 각각 매칭된 기능 아이콘이다.
예를 들어, 복수의 기능 아이콘(321 내지 326) 중 제1 기능 아이콘(322)은 테이블 구성 요소 중 이미지(1000)에 포함된 테이블(1100, 1200)의 바깥쪽 테두리 요소를 특정하는 기능과 매칭된 아이콘일 수 있다.
그리고, 복수의 기능 아이콘(321 내지 326) 중 제2 기능 아이콘(323)은, 테이블 구성 요소 중 이미지(1000)에 포함된 테이블(1100, 1200)의 행 요소를 특정하는 기능과 매칭된 아이콘일 수 있다.
나아가, 복수의 기능 아이콘(321 내지 326) 중 제3 기능 아이콘(324)은, 테이블 구성 요소 중 이미지(1000)에 포함된 테이블(1100, 1200)의 열 요소를 특정하는 기능과 매칭된 아이콘일 수 있다.
나아가, 복수의 기능 아이콘(321 내지 326) 중 제4 내지 제6 기능 아이콘(324, 325, 326)은, 위에서 특정된 테이블 구성 요소에 의해 구획된 셀들을 가로 및 세로 방향 중 적어도 하나의 방향으로 병합하는 병합 기능과 매칭된 아이콘일 수 있다.
본 발명에서, 제어부(140)는 사용자 입력에 기반하여, 어느 하나의 기능 아이콘이 선택되면, 이미지(1000)에 포함된 테이블(1100, 1200)로부터 상기 선택된 기능 아이콘에 대응되는 구성 요소를 특정하는 과정을 진행할 수 있다.
예를 들어, 복수의 기능 아이콘(321 내지 326) 중 제1 기능 아이콘(322)이 선택되면, 제어부(140)는 테이블 구성 요소 중 이미지(1000)에 포함된 테이블(1100, 1200)의 바깥쪽 테두리 요소를 특정할 수 있다.
다른 예로서, 복수의 기능 아이콘(321 내지 326) 중 제2 기능 아이콘(323)이 선택되면, 제어부(140)는 테이블 구성 요소 중 이미지(1000)에 포함된 테이블(1100, 1200)의 행 요소를 특정할 수 있다.
또 다른 예로서, 복수의 기능 아이콘(321 내지 326) 중 제3 기능 아이콘(324)이 선택되면, 제어부(140)는 테이블 구성 요소 중 이미지(1000)에 포함된 테이블(1100, 1200)의 열 요소를 특정할 수 있다.
다음으로 본 발명에서는, 위에서 살펴본 기능 아이콘 중 어느 하나의 기능 아이콘이 선택된 후, 이미지(1000)에 가해지는 기 설정된 방식의 입력에 근거하여, 선택된 기능 아이콘에 매칭된 테이블 구성 요소에 해당하는 가이드 정보를 출력하는 과정을 진행할 수 있다(S430).
여기에서, 기 설정된 방식의 입력은 다양한 입력일 수 있으며, 이미지(1000)에 가해지는 드래그 입력 및 클릭 중 적어도 하나를 포함할 수 있다. 예를 들어, 기 설정된 방식의 입력은 클릭 입력에서 연장되는 드래그 입력일 수 있다.
제어부(140)는, 기능 아이콘 중 어느 하나가 선택된 후, 이미지(1000)에 대해 상기 기 설정된 방식에 해당하는 입력(또는 사용자 입력)이 가해지면, 가해진 사용자 입력을, 선택된 기능 아이콘에 대응되는 구성 요소를 인식 또는 특정하는 입력으로서 처리할 수 있다.
이때, 제어부(140)는 이미지 인식 알고리즘에 근거하여, 선택된 기능 아이콘에 대응되는 구성 요소를 인식할 수 있다.
저장부(120)는 구성 요소 마다 각각 대응되는 형상 정보가 저장되어 존재할 수 있다. 제어부(140)는 이러한 형상 정보에 근거하여, 테이블(1100, 1200)로부터, 선택된 기능 아이콘에 대응되는 구성 요소를 인식할 수 있다.
예를 들어, 바깥쪽 테두리 요소에 해당하는 구성 요소를 특정하는 제1 기능 아이콘이 선택된 경우, 제어부(140)는 이미지(1000)에서, 상기 사용자 입력이 가해진 영역에 포함된 바깥쪽 테두리 요소를 인식 또는 특정할 수 있다. 그리고, 제어부(140)는 바깥쪽 테두리 요소에 해당하는 구성 요소가 특정되었음을 나타내기 위하여, 특정된 구성 요소에 해당하는 가이드 정보(예를 들어, 박스 이미지)를 출력할 수 있다.
이와 다르게, 제어부(140)는 바깥쪽 테두리 요소에 해당하는 구성 요소를 특정하는 제1 기능 아이콘이 선택된 경우, 이미지(1000)에서 상기 사용자 입력이 가해진 영역과 대응되도록 바깥쪽 테두리 요소를 나타내는 가이드 정보를 출력할 수 있다.
한편, 가이드 정보는 시각적인 정보로서, 각각의 구성요소에 따라 다르게 나타내어 질 수 있다. 예를 들어, 구성 요소가 테이블 바깥쪽 테두리 요소에 해당하는 경우, 가이드 정보는 박스(box) 이미지로 나타내어질 수 있다. 이러한 박스 이미지가 출력되는 영역은, 이미지(1000)에서 테이블(1100. 1200)이 위치하는 테이블 영역에 대응될 수 있다.
다른 예로서, 구성 요소가 행 요소에 해당하는 경우, 가이드 정보는 가로 방향으로 연장되는 가로 라인(또는 선분) 이미지로 나타내어질 수 있다.
또 다른 예로서, 구성 요소가 열 요소에 해당하는 경우, 가이드 정보는 세로 방향으로 연장되는 세로 라인(또는 선분) 이미지로 나타내어질 수 있다.
이하에서는, 구성요소들을 각각 특정하고, 가이드 정보를 출력하는 방법에 대하여 보다 구체적으로 살펴본다.
본 발명에서는, 구성 요소(바깥쪽 테두리 요소, 행 요소, 열 요소)를 특정하는 과정을 통하여, 결과적으로 이미지(1000)에 포함된 테이블(1100, 1200)과 동일한 테이블 구조를 가지는 테이블을 그려낼 수 있다. 이미지(1000)에 포함된 테이블(1100, 1200)과 동일한 구조를 가지는 테이블은 “재현 테이블”이라고도 명명될 수 있다. 이하에서 살펴본, 도 6 내지 도 8의 과정은 이미지(1000)에 포함된 테이블(1100, 1200)과 동일한 구조를 갖는 재현 테이블을 생성하기 위한 과정으로서, 이러한 과정에서 그려지는 테이블 역시, 재현 테이블로 명명할 수 있다.
즉, 이미지(1000)에 포함된 테이블(1100, 1200)과 동일한 구조를 갖는 재현 테이블이 완성되기 전이라도, 위의 과정을 통하여 그려지고 있는 테이블은 모두 재현 테이블이라고 명명 가능하다.
먼저, 도 6과 함께 바깥쪽 테두리 요소를 특정 및 가이드 정보를 출력하는 방법에 대하여 살펴본다.
예를 들어, 도 6에 도시된 것과 같이, 복수의 기능 아이콘(321 내지 326) 중 제1 기능 아이콘(322)이 선택되면, 제어부(140)는 테이블 구성 요소 중 이미지(1000)에 포함된 테이블(1100, 1200)의 바깥쪽 테두리 요소를 특정할 수 있다.
제어부(140)는, 제1 기능 아이콘(322)이 선택된 후, 기 설정된 방식의 입력(401, 402, 403, 404)을 통해, 상기 이미지에 포함된 테이블이 위치한 테이블 영역(610, 620)을 특정 받을 수 있다.
상기 기 설정된 방식의 입력은 각각의 테이블(1100, 1200)의 일 영역에서 다른 영역으로 연장되는 드래그 입력을 포함할 수 있다.
사용자는, 드래그 입력을 통해, 이미지(1000)에서 테이블(1100, 1200)이 포함된 테이블 영역을 선택할 수 있다.
제어부(140)는 이러한 드래그 입력에 근거하여, 이미지(1000)에서 테이블(1100, 1200)이 포함된 테이블 영역을 특정하고, 특정된 테이블 영역에 가이드 정보(610, 620)를 출력할 수 있다.
이러한 테이블 영역은 테이블의 바깥쪽 테두리에 해당하는 영역으로서, 제어부(140)는 이미지에 포함된 테이블(1100, 1200)의 바깥쪽 테두리를 나타내는 박스(BOX) 이미지(610, 620)를 가이드 정보(610, 620)로서 출력할 수 있다. 박스 이미지(610, 620)는, 이미지(1000)에 포함된 테이블(1100, 1200)이 사용자에게 인식 가능하도록 내부는 빈 영역으로 이루어지고, 경계만 실선 또는 점선이로 이루어진 외관을 가질 수 있다.
제어부(140)는 이러한 가이드 정보(610, 620)를, 이미지(1000)와 중첩하여 표시할 수 있다. 즉, 가이드 정보(610, 620)는, 이미지(1000)와 오버랩(overlap)되어 출력될 수 있다.
한편, 본 발명에서 제어부(140)는 바깥쪽 테두리 요소를 특정하기 위한 사용자 입력이, 이미지(1000)에 포함된 테이블(1100, 1200)의 크기와 정확하게 일치하게 가해지지 않더라도, 이미지(1000)에 포함된 테이블(1100, 1200)의 크기와 대응되는 크기로 박스 이미지를 출력할 수 있다.
이는, 앞서 살펴본 것과 같이, 제어부(140)는 이미지 인식 알고리즘에 근거하여, 선택된 기능 아이콘에 대응되는 구성 요소를 인식할 수 있기 때문이다.
저장부(120)는 구성 요소 마다 각각 대응되는 형상 정보가 저장되어 존재할 수 있다. 제어부(140)는 이러한 형상 정보에 근거하여, 테이블(1100, 1200)로부터, 선택된 기능 아이콘에 대응되는 구성 요소(예를 들어, 바깥쪽 테두리)를 인식할 수 있다. 제어부(140)는 이미지 인식 알고리즘을 통해, 이미지(1000)에서, 상기 사용자 입력이 가해진 영역에 포함된 바깥쪽 테두리 요소를 인식 또는 특정할 수 있다.
도시와 같이, 이미지(1000)에 복수의 테이블(1100, 1200)이 포함된 경우, 제어부(140)는 제1 테이블(1100)이 포함된 테이블 영역에 대한 기 설정된 방식의 입력에 근거하여, 제1 테이블(1100)의 바깥쪽 테두리 요소를 특정할 수 있다.
마찬가지로, 제어부(140)는 제2 테이블(1200)이 포함된 테이블 영역에 대한 기 설정된 방식의 입력에 근거하여, 제2 테이블(1200)의 바깥쪽 테두리 요소를 특정할 수 있다.
이와 같이, 본 발명에서는, 이미지(1000)에 복수의 테이블이 포함된 경우라도, 각각의 테이블에 대한 구성 요소를 특정하는 것이 가능하다.
한편, 제어부(140)는 이미지(1000)에서, 복수의 바깥쪽 테두리 요소가 특정된 경우, 이미지(1000)에 복수의 테이블(1100, 1200)이 포함되어 있다고 판단할 수 있다.
한편, 이와 같이, 테이블(1100, 1200)에 대한 바깥쪽 테두리 요소가 특정된 경우, 제어부(140)는 생성 대상 테이블이 인식되었다고 판단할 수 있다.
이 경우, 제어부(140)는 현재까지 재현된 테이블의 정보를 작업 영역(300)의 일 영역(예를 들어, 속성 영역(350))에 출력할 수 있다.
이러한 속성 영역(350)에는 서로 다른 테이블 단위 마다 구분되어 정보가 출력될 수 있다. 제어부(140)는 바깥쪽 테두리 요소 마다 서로 다른 테이블로 인식할 수 있으며, 인식된 바깥쪽 테두리 요소에 각각 대응되는 테이블의 속성 정보(351, 352)를 속성 영역(350)에 제공할 수 있다.
도시와 같이, 속성 정보(351, 352)는 인식된 테이블(또는, 재현 테이블(바깥쪽 테두리 요소에 대응되는 테이블)) 각각에 대한 속성과 관련된 정보를 포함하여, 이러한 속성은, 행의 개수(Rows), 열의 개수(Cols) 및 병합된 셀의 개수(Merges) 중 적어도 하나와 관련된 정보를 포함할 수 있다. 여기에서, 인식된 테이블(또는 재현 테이블)은 이미지에 포함된 테이블(1100, 1200)과는 구분되는 것으로서, 박스 이미지(610, 620)에 대응되는 테이블을 의미할 수 있다.
한편, 속성 영역(350)에 출력되는 속성 정보는 테이블(1100, 1200)에 포함된 구성 요소를 특정하는 과정이 진행되는 것에 따라, 업데이트될 수 있다.
예를 들어, 위에서 살펴본 것 같이, 제1 및 제2 테이블(1100, 1200) 각각에 대하여 테이블의 바깥쪽 테두리 요소만 특정된 경우, 제1 및 제2 테이블(1100, 1200)에 근거하여, 재현 테이블은 각각 행과 열을 1개 포함하며, 병합된 셀은 존재하지 않을 수 있다.
다음으로, 도 7과 함께 행 요소를 특정 및 가이드 정보를 출력하는 방법에 대하여 살펴본다.
예를 들어, 도 7에 도시된 것과 같이, 복수의 기능 아이콘(321 내지 326) 중 제2 기능 아이콘(323)이 선택되면, 제어부(140)는 테이블 구성 요소 중 이미지(1000)에 포함된 테이블(1100, 1200)의 행 요소를 특정할 수 있다.
행 요소는, 가로(또는 수평) 방향으로 연장되는 라인(또는 선분)을 의미할 수 있다. 이러한 행 요소는, 테이블의 구성에 따라 하나 또는 복수개 존재할 수 있다.
제어부(140)는, 제2 기능 아이콘(323)이 선택된 후, 기 설정된 방식의 입력(601)을 통해, 상기 이미지(1000)에 포함된 테이블(1100, 1200)을 구성하는 가로 라인을 특정 받을 수 있다. 상기 기 설정된 방식의 입력은, 클릭 입력일 수 있다.
즉, 제어부(140)는 제2 기능 아이콘(323)이 선택된 후, 상기 기 설정된 방식의 입력에 의해 상기 이미지(1000)에 포함된 테이블의 행 요소가 특정된 경우, 상기 이미지(1000)에 포함된 테이블의 행 요소를 구성하는 적어도 하나의 가로 라인에 대응되는 가이드 정보(1101, 1102, 1103, 1104, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208)를 상기 박스 이미지(610, 620) 내에 출력할 수 있다.
가이드 정보(1101, 1102, 1103, 1104, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208)는 도시와 같이, 실선 또는 점선으로 시각적으로 나타내어 질 수 있으며, 박스 이미지(610, 620)의 일 측에서 시작하여 상기 일 측과 마주보는 반대 측까지 연장되도록 이루어질 수 있다. 여기에서, 연장되는 방향은, 가로 방향(또는 수평 방향)일 수 있다. 이러한 가이드 정보(1101, 1102, 1103, 1104, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208)에 의해, 박스 이미지(610, 620)는 행 방향으로 적어도 두개의 셀로 구획될 수 있다.
예를 들어, 제1 테이블(1100)에 대응되는 제1 박스 이미지(610)는 제1 테이블(1100)에서 추출된 가로 라인 및 이에 대응되는 가이드 정보(1101, 1102, 1103, 1104)에 근거하여, 5개의 행으로 구획될 수 있다.
이러한 구획에 근거하여, 속성 영역(350)에 출력되는 속성 정보는 업데이트될 수 있다. 업데이트 결과, 제1 테이블(1100)에 대응되는 속성 정보(351)는, 재현된 제1 테이블(제1 박스 이미지(610)에 대응되는 테이블)이 5개의 행을 포함하는 것으로, 행에 대한 정보(“Rows: 5”)가 업데이트 될 수 있다.
마찬가지로, 제2 테이블(1200)에 대응되는 제2 박스 이미지(620)는 제2 테이블(1200)에서 추출된 가로 라인 및 이에 대응되는 가이드 정보(1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208)에 근거하여, 9개의 행으로 구획될 수 있다.
이러한 구획에 근거하여, 속성 영역(350)에 출력되는 속성 정보는 업데이트될 수 있다. 업데이트 결과, 제2 테이블(1200)에 대응되는 속성 정보(352)는 재현된 제2 테이블(제2 박스 이미지(620)에 대응되는 테이블)이 9개의 행을 포함하는 것으로, 행에 대한 정보(“Rows: 9”)가 업데이트 될 수 있다.
한편, 제어부(140)는 이미지 인식 알고리즘에 근거하여, 기법에 기반하여, 상기 기 설정된 방식의 사용자 입력이 가해진 영역에 포함된 가로 라인을 추출할 수 있다. 테이블(1100, 1200)에서 “가로 라인을 추출”한다는 것은, 테이블(1100, 1200)에서 가로 라인에 해당하는 구성 요소를 인식하고, 해당 구성 요소를 가로 라인이라고 판단하는 것을 의미할 수 있다.
다음으로, 도 8과 함께 열 요소를 특정 및 가이드 정보를 출력하는 방법에 대하여 살펴본다.
예를 들어, 도 8에 도시된 것과 같이, 복수의 기능 아이콘(321 내지 326) 중 제3 기능 아이콘(324)이 선택되면, 제어부(140)는 테이블 구성 요소 중 이미지(1000)에 포함된 테이블(1100, 1200)의 열 요소를 특정할 수 있다.
열 요소는, 세로(또는 수직) 방향으로 연장되는 라인(또는 선분)을 의미할 수 있다. 이러한 열 요소는, 테이블의 구성에 따라 하나 또는 복수개 존재할 수 있다.
제어부(140)는, 제3 기능 아이콘(324)이 선택된 후, 기 설정된 방식의 입력(701)을 통해, 상기 이미지(1000)에 포함된 테이블(1100, 1200)을 구성하는 세로 라인을 특정 받을 수 있다. 상기 기 설정된 방식의 입력은, 클릭 입력일 수 있다.
즉, 제어부(140)는 제3 기능 아이콘(324)이 선택된 후, 상기 기 설정된 방식의 입력에 의해 상기 이미지(1000)에 포함된 테이블의 열 요소가 특정된 경우, 상기 이미지(1000)에 포함된 테이블의 열 요소를 구성하는 적어도 하나의 세로 라인에 대응되는 가이드 정보(1111, 1112, 11131211, 1221, 1222, 1223, 1224, 1225)를 상기 박스 이미지(610, 620) 내에 출력할 수 있다.
가이드 정보(1111, 1112, 1113, 1211, 1221, 1222, 1223, 1224, 1225)는 도시와 같이, 실선 또는 점선으로 시각적으로 나타내어 질 수 있으며, 박스 이미지(610, 620)의 일 측에서 시작하여 상기 일 측과 마주보는 반대 측까지 연장되도록 이루어질 수 있다. 여기에서, 연장되는 방향은, 세로 방향(또는 수직 방향)일 수 있다. 이러한 가이드 정보(1111, 1112, 1113, 1211, 1221, 1222, 1223, 1224, 1225)에 의해, 박스 이미지(610, 620)는 열 방향으로 적어도 두개의 셀로 구획될 수 있다.
예를 들어, 제1 테이블(1100)에 대응되는 제1 박스 이미지(610)는 제1 테이블(1100)에서 추출된 세로 라인 및 이에 대응되는 가이드 정보(1111, 1112, 1113)에 근거하여, 4개의 열로 구획될 수 있다.
이러한 구획에 근거하여, 속성 영역(350)에 출력되는 속성 정보는 업데이트될 수 있다. 업데이트 결과, 제1 테이블(1100)에 대응되는 속성 정보(351)는 재현된 제1 테이블(제1 박스 이미지(610)에 대응되는 테이블)이 4개의 열을 포함하는 것으로, 열에 대한 정보(“Cols: 5”)가 업데이트 될 수 있다.
마찬가지로, 제2 테이블(1200)에 대응되는 제2 박스 이미지(620)는 제2 테이블(1200)에서 추출된 세로 라인 및 이에 대응되는 가이드 정보(1211, 1221, 1222, 1223, 1224, 1225)에 근거하여, 7개의 열로 구획될 수 있다.
이러한 구획에 근거하여, 속성 영역(350)에 출력되는 속성 정보는 업데이트될 수 있다. 업데이트 결과, 제2 테이블(1200)에 대응되는 속성 정보(352)는 재현된 제2 테이블(제2 박스 이미지(620)에 대응되는 테이블)이 7개의 열을 포함하는 것으로, 행에 대한 정보(“Cols: 7”)가 업데이트 될 수 있다.
한편, 제어부(140)는 이미지 인식 알고리즘에 근거하여, 기법에 기반하여, 상기 기 설정된 방식의 사용자 입력이 가해진 영역에 포함된 세로 라인을 추출할 수 있다. 테이블(1100, 1200)에서 “세로 라인을 추출”한다는 것은, 테이블(1100, 1200)에서 가로 라인에 해당하는 구성 요소를 인식하고, 해당 구성 요소를 세로 라인이라고 판단하는 것을 의미할 수 있다.
한편, 테이블(1100, 1200)로부터 구성 요소를 특정하는 순서는 자유롭게 변형 가능하다.
위에서 살펴본 것과 같이, 본 발명에서는, 기능 아이콘에 대한 선택 및 사용자 입력에 근거하여, 이미지(1000)에 포함된 테이블(1100, 1200)의 구성 요소(바깥쪽 테두리 요소, 행 요소, 열 요소)를 특정하였다. 이러한 특정을 통하여, 각각의 구성 요소에 대응되는 가이드 정보가 출력되었으며, 결과적으로 이러한 가이드 정보는 이미지(1000)에 포함된 테이블(1100, 1200)을 재현한 테이블에 해당할 수 있다.
한편, 도 8에 도시된 것과 같이, 테이블(1100, 1200)의 바깥쪽 테두리 요소를 특정한 박스 이미지(610, 620)는, 행 요소 및 열 요소의 특정을 통해 출력된 가로 라인 및 상기 세로 라인에 해당하는 가이드 정보(1101, 1102, 1103, 1104, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208, 1111, 1112, 1113, 1211, 1221, 1222, 1223, 1224, 1225)에 의해, 복수의 셀을 포함하도록 구획될 수 있다.
즉, 박스 이미지(610, 620)는, 기능 아이콘을 통해 특정된 가로 라인 및 상기 세로 라인에 의해, 복수의 셀을 포함하도록 구획될 수 있다.
이러한 복수의 셀은, 이미지(1000)에 포함된 테이블(1100, 1200)에 존재하는 실제 셀과 관계없이, 테이블에 존재하는 모든 라인에 근거하여 구분되는 서브 셀 단위로 분할된 셀일 수 있다.
예를 들어, 제1 테이블(1100)의 경우, 4개의 가로 라인(1101, 1102, 1103, 1104, 도 7 참조)과 3개의 수직 라인(1111, 1112, 1113, 도 8 참조)에 의하여, 20개의 서브 셀로 구획될 수 있다. 서브 셀의 개수는 (가로 라인의 수-1) x (수직 라인의 수-1)에 의하여 구해질 수 있다.
또 다른 예를 들어, 제2 테이블(1200)의 경우, 8개의 가로 라인(1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208, 도 7 참조)과 6개의 수직 라인(1211, 1221, 1222, 1223, 1224, 1225, 도 8 참조)에 의하여, 35개의 서브 셀로 구획될 수 있다.
이와 같이, 이미지(1000)에 포함된 테이블(1100, 1200)의 구성요소에 근거하여, 셀을 구획하는 경우, 박스 이미지(610, 620)의 구조는 이미지(1000)에 포함된 테이블(1100, 1200)의 구조와 상이할 수 있다.
즉, 박스 이미지(610, 620)는, 각각의 테이블(1100, 1200)에 포함된 모든 라인(가로 라인 및 세로 라인)에 근거하여 최소 단위로 분할된 셀을 가지기 때문이다.
이에, 본 발명에서는, 이미지(1000)에 포함된 테이블(1100, 1200)과 동일한 구조를 갖는 테이블(또는 재현 테이블)을 생성하기 위하여, 셀을 병합하는 과정이 진행될 수 있다.
즉, 본 발명에 따른 테이블 생성 방법에서는 가이드 정보를 이용하여, 이미지에 포함된 테이블과 대응되는 구조를 갖는 테이블을 생성하는 과정이 진행될 수 있다(S440).
본 과정은, 가로 라인 및 세로 라인의 적어도 일부를 제거하는 과정으로서, 필요한 경우에 한하여 수행될 수 있다.
즉, 앞서 살펴본 S410 내지 S430 과정에 의해서, 이미지(1000)에 포함된 테이블(1100, 1200)과 동일한 구조를 갖는 재현 테이블이 생성된 경우, S440 과정을 수행되지 않을 수 있다. 한편, 재현 테이블은 앞서 살펴본 구성 요소를 특정하는 과정을 통해 그려진 박스 이미지, 가로 라인 및 세로 라인에 해당하는 가이드 정보로 이루어진 테이블 일 수 있다.
한편, 가로 라인 및 세로 라인의 적어도 일부를 제거하는 과정은 인접한 적어도 두개의 셀 사이에 포함된 가로 라인 및 세로 라인의 적어도 일부를 제거함으로써, 인접한 적어도 두개의 셀을 병합하는 과정을 의미할 수 있다.
이러한 병합의 과정은, 툴 영역(320)에 포함된 복수의 기능 아이콘 중 상기 가로 라인 및 상기 세로 라인의 적어도 일부를 삭제하는 기능(또는 병합 기능)이 매칭된 기능 아이콘이 선택된 후, 가이드 정보에 가해지는 사용자 입력에 근거하여 이루어질 수 있다.
이러한 병합 기능에 매칭된 기능 아이콘은 복수개일 수 있으며, 이는, i)가로 방향 및 세로 방향에 관계없이, 사용자 입력에 의해 특정된 적어도 두개의 셀 사이에 존재하는 가로 라인 및 세로 라인을 모두 제거하는 기능이 할당된 제4 기능 아이콘(325), ii) 도 10에 도시된 것과 같이, 사용자 입력에 의해 특정된 영역(도면부호 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932)에 해당하는 셀이 포함된 영역)에 포함된 복수의 셀들(921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932) 사이에 존재하는 세로 라인(911)을 제거하여, 상기 복수의 셀들(921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932)을, 가로 방향으로 병합하는 기능이 할당된 제5 기능 아이콘(326), iii) 도 11에 도시된 것과 같이, 사용자 입력에 의해 특정된 영역(도면 부호 951, 952, 953, 954에 해당하는 셀이 포함된 영역)에 포함된 복수의 셀들(951, 952, 953, 954) 사이에 존재하는 가로 라인(941, 942, 943)을 제거하여, 서로 인접한 셀들을 세로 방향으로 병합하는 기능이 할당된 제6 기능 아이콘(327) 중 적어도 하나를 포함할 수 있다.
보다 구체적으로, 도 9를 참조하면, 제4 기능 아이콘(325)이 선택된 후 이미지(1000)에 가해지는 사용자 입력에 근거하여, 제어부(140)는 사용자 입력이 가해진 영역에 포함된 셀들 사이의 가로 라인 및 세로 라인을 모두 제거(삭제)하여, 하나의 셀을 생성할 수 있다. 예를 들어, 제1 테이블(1100)에서, “환자 등록번호”, “환자 성명”, “12345678”, “홍길동”의 정보가 각각 포함된 4개의 셀이 기 설정된 방식의 사용자 입력에 의하여 선택되면, 제어부(140)는 상기 4개의 셀 사이에 존재하는 가로 라인 및 세로 라인을 모두 제거하여, 상기 4개의 셀을 하나의 셀로 병합할 수 있다.
나아가, 도 10을 참조하면, i)도 10의 (a)에 도시된 것과 같이, 제5 기능 아이콘(326)이 선택된 후, ii)도 10의 (b)에 도시된 것과 같이, 기 설정된 사용자 방식의 사용자 입력이 복수의 셀들(921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932)에 대하여 가해지면, iii)제어부(140)는 도 10의 (b) 및 (c)에 도시된 것과 같이, 복수의 셀들(921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932)사이에 존재하는 세로 라인(911)을 제거하여, 상기 복수의 셀들(921, 922, 923, 924, 925, 926, 927, 928, 929, 930)이 가로 방향으로 병합된 병합 셀(921’, 923’, 925’, 927’, 929’, 931’)을 생성할 수 있다.
나아가, 도 11을 참조하면, i)도 11의 (a)에 도시된 것과 같이, 제6 기능 아이콘(327)이 선택된 후, ii)도 11의 (b)에 도시된 것과 같이, 기 설정된 사용자 방식의 사용자 입력이 복수의 셀들(951, 952, 953, 954)에 대하여 가해지면, iii)제어부(140)는 도 11의 (b) 및 (c)에 도시된 것과 같이, 복수의 셀들(951, 952, 953, 954)사이에 존재하는 가로 라인(941, 942, 943)을 제거하여, 상기 복수의 셀들(951, 952, 953, 954)이 세로 방향으로 병합된 병합 셀(950)을 생성할 수 있다.
이와 같이, 제어부(140)는 사용자 입력에 근거하여, 적어도 두개의 셀을 병합할 수 있으며, 그 결과, 도 9에 도시된 것과 같이, 박스 이미지(610,620)는 이미지(1000)에 포함된 테이블(1100, 1200)과 동일한 셀의 구조를 가질 수 있다.
한편, 이러한 병합의 과정에 근거하여, 속성 영역(350)에 출력되는 속성 정보는 업데이트될 수 있다. 업데이트 결과, 제1 테이블(1100)에 대응되는 속성 정보(351)는 재현된 제1 테이블(제1 박스 이미지(610)에 대응되는 테이블)이 1개의 병합된 셀(1121)을 포함하는 것으로, 병합된 셀에 대한 정보(“Merges: 1”)가 업데이트 될 수 있다.
그리고, 업데이트 결과, 제2 테이블(1200)에 대응되는 속성 정보(352)는 재현된 제2 테이블(제2 박스 이미지(620)에 대응되는 테이블)이 8개의 병합된 셀(1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228)을 포함하는 것으로, 병합된 셀에 대한 정보(“Merges: 8”)가 업데이트 될 수 있다.
이러한 병합이 완료되면, 도 12에 도시된 것과 같이, 박스 이미지(610, 620)는 이미지(1000)에 포함된 테이블(1100, 1200)과 동일한 셀의 구조를 갖는 재현 테이블이 될 수 있다. 즉, 제어부(140)는 재현 테이블을 생성할 수 있다.
한편, 위의 과정은 셀들 간의 관련성에 대한 고려 없이, 이미지(1000)에 포함된 테이블(1100, 1200)의 구조에 해당하는 구성 요소를 추출하는 기능에 대하여 살펴보았다. 이하에서는 이미지(1000)에 포함된 테이블(1100, 1200)의 셀들 간의 관련성 즉, 데이터들 간의 관계성을 부여하는 방법에 대하여 보다 구체적으로 살펴본다.
도 3b를 참조하여 전술한 바와 같이, “셀들 간의 관계를 특정한다”고 함은, 테이블에 포함된 복수의 셀 중 서로 관련된 데이터를 포함하는 셀들을 특정(또는 그룹핑)하는 과정이 될 수 있으며, 이러한 과정을 위하여 툴바 영역(370)의 기능 아이콘(371, 372, 373)이 구비될 수 있다.
또한, 상기 셀들 간의 관계를 특정하는 것은 의미적으로 상위개념의 텍스트와 하위개념의 텍스트를 구분하여 셀들을 특정하는 과정이 될 수 있다. 예를 들어, 상기 셀들 간의 관계를 특정하는 것은 해당하는 텍스트가 상위개념과 하위개념 중 어디에 속하는지 지정하고, 상위개념으로 지정된 텍스트를 관련된 하위개념의 텍스트들과 연결하여 그룹핑하는 과정이 될 수 있다.
보다 구체적으로, 상기 상위개념의 텍스트가 배치되는 셀은 범주 셀이고, 상기 하위개념의 텍스트가 배치되는 셀은 상기 범주에 속하는 데이터 셀이 될 수 있다. 도 3b를 참조하여 전술한 바와 같이, 상기, 범주는 동일하거나 유사한 성질 또는 의미를 기준으로 구분되는 것으로서, 카테고리(category)라고도 명명될 수 있다. 동일한 범주에 속한 데이터는, 서로 동일한 의미, 서로 동일한 종류, 또는 서로 동일한 소속에 해당하는 데이터일 수 있다.
범주 셀에는, 범주의 이름 또는 범주의 이름과 관련된 데이터가 포함되며, 데이터 셀은 범주 셀에 포함된 범주의 이름에 속한 데이터가 포함될 수 있다. 여기에서 범주의 이름은 카테고리 명으로도 이해되어 질 수 있다.
도 13을 참조하면, 먼저, 상기 복수의 셀 중, 상기 이미지에 포함된 테이블의 범주의 이름이 포함된 범주 셀을 특정하는 단계가 진행될 수 있다.
툴바 영역(370)의 기능 아이콘(371, 372, 373)들 중에서 범주를 지정하는 제1기능 아이콘(371)이 선택되어 상기 범주 셀을 특정하는 단계가 시작될 수 있다. 이 경우에, 상기 작업 영역의 다른 일 영역에는, 상기 범주 셀이 특정되는 것에 근거하여, 상기 범주 셀에 포함된 범주의 이름이, 상기 범주 셀의 식별 정보와 함께 출력될 수 있다.
예를 들어, 상기 제1기능 아이콘(371)에 대한 선택에 의하여 제1기능 아이콘(371)가 선택될 수 있으며, 상기 제1기능 아이콘(371)이 선택되면, 상기 작업 영역의 속성 영역(350)에는 키(keys) 항목이 활성화되면서 선택된 범주 데이터의 리스트가 출력될 수 있다. 상기 범주 데이터의 리스트에는 상기 범주 셀에 포함된 범주의 이름이, 상기 범주 셀의 식별 정보(예를 들어, 일련번호)와 함께 출력될 수 있다.
이 때에, 상기 작업 영역(300)에 출력된 테이블(1100, 1200)에서 클릭 입력이나 드래그 입력에 의하여 셀들이 선택되며, 상기 선택되는 셀들이 범주 셀로서 지정될 수 있다. 예를 들어, 상기 테이블(1100, 1200)에서 셀들(1301, 1302, 1303, 1304, 1305)이 클릭 앤 드래그 방식으로 선택되면, 이들은 범주 셀로서 지정될 수 있다.
범주 데이터의 리스트에서 상기 범주의 이름과 식별 정보는 상기 범주 셀이 선택되는 순서에 따라서 순차적으로 출력될 수 있다. 이 경우에, 상기 선택된 셀들은 하이라이팅 등을 통하여 선택되었음을 표시될 수 있다.
한편, 상기 속성 영역(350)에는 상기 작업 영역(300)에 출력된 테이블(1100, 1200)의 각각에 대응하는 범주의 이름에 대한 리스트 영역이 형성될 수 있다. 예를 들어, 제1테이블(1100)과 제2테이블(1200)에 각각 해당하는 제1리스트 영역(1330)과 제2리스트 영역(1340)이 상기 키(keys) 항목의 출력영역(1320)에 표시될 수 있다. 이 때에, 상기 제1리스트 영역(1330)에서 상기 범주의 이름이 출력되는 순서는 상기 제2테이블(1200)과 독립적으로 상기 제1테이블(1100)에서 셀들(1301, 1302, 1303, 1304, 1305)이 선택되는 순서에 따를 수 있다. 또한, 상기 제2리스트 영역(1340)에서 상기 범주의 이름이 출력되는 순서는 상기 제1테이블(1100)과 독립적으로 상기 제2테이블(1200)에서 셀들(1311)이 선택되는 순서에 따를 수 있다.
다음으로, 본 발명의 테이블 생성 방법에서 상기 복수의 셀 중 상기 범주 셀과 관련된 데이터 셀을 특정하는 단계가 진행될 수 있다. 예를 들어, 상기 작업 영역(300)에 출력된 테이블(1100, 1200)에서 범주 셀들이 키(keys) 항목으로 선택된 후에는, 데이터 셀을 행과 열을 따라 선택하는 과정이 진행될 수 있다.
상기 범주 셀과 관련된 상기 데이터 셀의 특정은, 상기 범주 셀에서 시작하는 기 설정된 방식의 입력에 근거하여 이루어질 수 있다. 이하, 이러한 입력 방식에 대하여 보다 상세히 설명한다.
예를 들어, 제2기능 아이콘(372)이 선택하면, 도 14와 같이 행을 따라 데이터 셀을 선택하는 기능이 활성화되고, 제3기능 아이콘(373)을 선택하면, 도 15와 같이 열을 따라 데이터 셀을 선택하는 기능이 활성화될 수 있다.
먼저, 도 14를 참조하면, 제2기능 아이콘(372)이 선택되면, 상기 속성 영역(350)에는 행(rows) 항목이 활성화되면서 행 방향을 따라 그룹핑된 셀 그룹 리스트가 출력될 수 있다.
상기 작업 영역(300)에 출력된 테이블(1100, 1200)에서 어느 하나의 범주 셀(1402)이 선택되고, 상기 범주 셀(1402)의 선택에 이어서 선택되는 데이터 셀들(1403, 1404)이 상기 범주 셀에 속하는 데이터 셀로서 지정된다. 상기 셀들의 선택은 클릭 입력, 드래그 입력 또는 클릭 앤 드래그 입력에 의하여 수행될 수 있다. 이러한 예로서, 상기 범주 셀(1402)이 터치된 후에 행 방향을 따라 인접한 데이터 셀들(1403, 1404)을 지나가는 드래그가 입력되면, 상기 범주 셀의 범주 이름을 상위 개념으로 하고 상기 데이터 셀의 내용을 하위 개념으로 한 셀 그룹이 형성된다.
상기 속성 영역(350)에는 상기 작업 영역(300)에서 선택된 셀들에 의하여 그룹핑된 셀 그룹 데이터의 리스트(1420)가 출력될 수 있다. 상기 리스트(1420)는 최상단에 범주 이름이 출력되고, 상기 범주 이름의 하측으로 선택되는 데이터 셀의 내용이 순서대로 출력될 수 있다.
한편, 상기 행 방향을 따라 셀들 간의 관계를 특정하는 과정에서, 하나의 셀 그룹은 서로 다른 범주 셀의 선택을 기준으로 그룹핑의 시작과 끝이 지정될 수 있다.
예를 들어, 상기 복수의 셀에서 복수의 범주 셀이 특정되고, 상기 복수의 범주 셀 중 제1 범주 셀에서 시작하는 기 설정된 방식의 입력에 의해 상기 제1 범주 셀과 다른 제2 범주 셀이 선택된 경우, 제어부(140)는 상기 제2 범주 셀이 선택되기 전까지 선택된 데이터 셀을 상기 제1 범주 셀과 관련된 데이터 셀로서 특정할 수 있다.
도 14를 참조하면 이러한 특정은, “진찰료”에 해당하는 제1 범주 셀(1402)을 터치하고, 행 방향을 따라 인접한 데이터 셀들(1403, 1404)을 지나서 마지막 데이터인 “38,040”에 해당하는 데이터 셀이 선택된 후에, “입원료”에 해당하는 제2 범주 셀(1405)이 선택되는 경우에 수행될 수 있다. 상기 제1 범주 셀과 제2 범주 셀의 사이에서 선택된 셀들이 상기 제1 범주 셀과 관련된 데이터 셀로서 특정될 수 있다. 또한, 제2 범주 셀이 선택된 후에, 선택되는 데이터 셀은 제2 범주 셀과 관련된 데이터 셀로서 특정될 수 있다.
또한, 상기 테이블의 셀들 중 일부는 범주 셀의 속성과 데이터 셀의 속성을 모두 가지는 셀이 되는 것도 가능하다. 예를 들어, “진찰료”의 경우에 “7,608”과 “30,432”의 데이터 셀들(1403, 1404)에 대하여 범주 셀이 되나, “기본항목”의 범주 셀(1401)에 대하여 데이터 셀이 될 수 있다. 이러한 경우에, 상기 “진찰료”에 해당하는 셀은 중간 범주 셀로 정의될 수 있다.
본 예시에서, 행 방향을 따라 범주 셀(1401), 중간 범주 셀(1402), 데이터 셀(1403, 1404)이 차례로 선택될 수 있으며, 이러한 경우에 상기 리스트(1420)에는 상위 개념(범주 이름), 중간 개념(중간 범주 이름), 하위 개념(데이터)가 차례로 출력되어 하나의 셀 그룹을 형성할 수 있다.
또한, 도 15를 참조하면, 제3기능 아이콘(373)를 선택하면, 상기 속성 영역(350)에는 열(clos) 항목이 활성화되면서 열 방향을 따라 그룹핑된 셀 그룹 리스트가 출력될 수 있다.
상기 작업 영역(300)에 출력된 테이블(1100, 1200)에서 어느 하나의 범주 셀(1501)이 선택되고, 상기 범주 셀(1501)에 이어서 선택되는 중간 범주 셀(1502)이 하나의 셀 그룹을 형성할 수 있다. 이 경우에, 전술한 행 방향을 따라 셀들 간의 관계를 특정하는 과정에서, 어느 속성으로 지정된 셀이 본 예시의 열 방향을 따라 셀들 간의 관계를 특정하는 과정에서 다른 속성으로 지정될 수 있다. 이러한 예로서, “기본 항목”은 행 방향을 따라 범주 셀로서 특정되나, 열 방향을 따라 “항목”의 범주 셀(1501)의 하위 개념인 중간 범주 셀(1502)로 특정될 수 있다.
한편, 본 예시의 열 방향을 따라 셀들 간의 관계를 특정하는 과정에서도 데이터 셀들이 상기 범주 셀이나 중간 범주 셀에 속하는 데이터 셀로서 지정될 수 있다. 또한, 상기 셀들의 선택은 클릭 입력, 드래그 입력 또는 클릭 앤 드래그 입력에 의하여 수행될 수 있다.
또한, 도 14를 참조하여 설명한 행 방향을 따라 셀들 간의 관계를 특정하는 과정과, 도 15를 참조하여 설명한 열 방향을 따라 셀들 간의 관계를 특정하는 과정에서 선택된 셀들은 하이라이팅 등을 통하여 선택되었음을 표시할 수 있다. 나아가, 중복하여 선택되는 셀들은 선택의 횟수에 따라서 하이라이팅되는 형태를 달리할 수 있다. 이러한 예로서, 선택되는 횟수가 증가할수록, 하이라이팅하는 색상이 보다 진하게 처리될 수 있다.
이상에서 살펴본 것과 같이, 본 발명에 따른 테이블 생성 방법 및 시스템에서는, 이미지에 포함된 테이블(1100, 1200)을 시각적으로 동일하게 재현하는 것 뿐만 아니라, 테이블(1100, 1200)을 구성하는 셀들의 관계까지 동일하게 재현함으로써, 보다 활용도 높은 재현 테이블을 생성할 수 있다.
한편, 재현 테이블(2100, 2200)은 엑셀(xlsx)구조의 데이터 또는 다양한 형식의 데이터로서 제공될 수 있다. 엑셀 구조의 데이터로, 재현 테이블이 제공되는 경우, 제어부(140)는 복수의 셀들 간의 관계성을 엑셀 데이터 반영할 수 있으며, 이 경우, 셀들 간의 연산 관계 또한 엑셀 데이터에 포함될 수 있다. 제어부(140)는 셀들에 포함된 텍스트 간의 상호 연산 관계를 추정하여, 추정된 연산 관계를 엑셀 데이터에 대응되는 셀들에 함수로서 적용할 수 있다.
위에서 살펴본 것과 같이, 본 발명에 따른 테이블 생성 방법 및 시스템은, 사용자 입력에 기반하여 이미지에 포함된 테이블의 구성 요소를 추출할 수 있는 사용자 환경을 제공할 수 있다. 이를 통해, 본 발명에 따른 테이블 생성 방법 및 시스템은, 테이블에 포함된 텍스트 데이터 뿐만 아니라, 테이블의 구조를 이루는 구성 요소들까지 추출이 가능하며, 결과적으로 이미지에 포함된 테이블과 동일한 구조 및 동일한 데이터를 갖는 테이블을 생성하는 것이 가능하다.
나아가, 본 발명에 따른 테이블 생성 방법 및 시스템은, 이미지에 포함된 테이블의 구성 요소에 의해 정의되는 셀들을 특정하고, 사용자 입력에 근거하여 셀들 간의 관계성을 부여하는 것을 통하여, 각 셀들에 포함된 데이터들이 유기적으로 분석될 수 있는 사용자 환경을 제공할 수 있다.
따라서, 본 발명에 따른 테이블 어플리케이션에 따른 테이블 생성 방법은, 이미지에 포함된 테이블의 구성 요소를 추출하는 기능 및 테이블에 포함된 데이터들 간의 관계성을 부여하는 기능을 제공함으로써, 이미지에 포함된 테이블의 시각적인 특성을 재현함은 물론, 데이터들 간의 관계적인 특성까지 재현할 수 있다.
한편, 위에서 살펴본 본 발명은, 컴퓨터에서 하나 이상의 프로세스에 의하여 실행되며, 이러한 컴퓨터로 판독될 수 있는 매체(또는 기록 매체)에 저장 가능한 프로그램으로서 구현될 수 있다.
나아가, 위에서 살펴본 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드 또는 명령어로서 구현하는 것이 가능하다. 즉, 본 발명은 프로그램의 형태로 제공될 수 있다.
한편, 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다.
나아가, 컴퓨터가 읽을 수 있는 매체는, 저장소를 포함하며 전자기기가 통신을 통하여 접근할 수 있는 서버 또는 클라우드 저장소일 수 있다. 이 경우, 컴퓨터는 유선 또는 무선 통신을 통하여, 서버 또는 클라우드 저장소로부터 본 발명에 따른 프로그램을 다운로드 받을 수 있다.
나아가, 본 발명에서는 위에서 설명한 컴퓨터는 프로세서, 즉 CPU(Central Processing Unit, 중앙처리장치)가 탑재된 전자기기로서, 그 종류에 대하여 특별한 한정을 두지 않는다.
한편, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
Claims (15)
- 테이블 생성 어플리케이션의 테이블 생성 방법에 있어서,
상기 어플리케이션에서 제공되는 작업 영역에 테이블을 포함하는 이미지를 출력하는 단계;
상기 작업 영역의 일 영역에 포함된 복수의 기능 아이콘 중 어느 하나의 기능 아이콘을 선택받는 단계;
상기 어느 하나의 기능 아이콘이 선택된 후 상기 이미지에 기 설정된 방식의 입력이 가해지면, 상기 기 설정된 방식의 입력을, 상기 이미지에서 상기 선택된 기능 아이콘에 대응되는 테이블 구성 요소를 인식 또는 특정하는 입력으로 처리하고, 상기 인식 또는 특정된 테이블 구성 요소에 해당하는 가이드 정보를 출력하는 단계; 및
상기 인식 또는 특정된 테이블 구성요소를 이용하여, 상기 이미지에 포함된 테이블과 대응되는 구조를 갖는 테이블을 생성하는 단계를 포함하는 것을 특징으로 하는 테이블 생성 방법. - 제1항에 있어서,
상기 테이블 구성 요소는,
바깥쪽 테두리 요소, 행(row) 요소 및 열(column) 요소 중 적어도 하나를 포함하는 것을 특징으로 하는 테이블 생성 방법. - 삭제
- 제1항에 있어서,
상기 복수의 기능 아이콘 중 제1 기능 아이콘은, 상기 테이블 구성 요소 중 상기 이미지에 포함된 테이블의 바깥쪽 테두리 요소를 인식 또는 특정하는 기능과 매칭되고,
상기 복수의 기능 아이콘 중 제2 기능 아이콘은, 상기 테이블 구성 요소 중 상기 이미지에 포함된 테이블의 행 요소를 인식 또는 특정하는 기능과 매칭되며,
상기 복수의 기능 아이콘 중 제3 기능 아이콘은, 상기 테이블 구성 요소 중 상기 이미지에 포함된 열 요소를 인식 또는 특정하는 기능과 매칭되는 것을 특징으로 하는 테이블 생성 방법. - 제4항에 있어서,
상기 가이드 정보를 출력하는 단계에서는,
상기 제1 기능 아이콘이 선택된 후, 상기 기 설정된 방식의 입력에 의해 상기 이미지에 포함된 테이블이 위치한 테이블 영역이 인식 또는 특정된 경우,
상기 테이블 영역에, 상기 이미지에 포함된 테이블의 바깥쪽 테두리를 나타내는 박스(BOX) 이미지를 가이드 정보로서 출력하는 것을 특징으로 하는 테이블 생성 방법. - 제5항에 있어서,
상기 가이드 정보를 출력하는 단계에서는,
상기 제2 기능 아이콘이 선택된 후, 상기 기 설정된 방식의 입력에 의해 상기 이미지에 포함된 테이블의 행 요소가 인식 또는 특정된 경우,
상기 이미지에 포함된 테이블의 행 요소를 구성하는 적어도 하나의 가로 라인에 대응되는 가이드 정보를 상기 박스 이미지 내에 출력하고,
상기 제3 기능 아이콘이 선택된 후, 상기 기 설정된 방식의 입력에 의해 상기 이미지에 포함된 테이블의 열 요소가 인식 또는 특정된 경우,
상기 이미지에 포함된 테이블의 열 요소를 구성하는 적어도 하나의 세로 라인에 대응되는 가이드 정보를 상기 박스 이미지 내에 출력하는 것을 특징으로 하는 테이블 생성 방법. - 제6항에 있어서,
상기 가로 라인 및 상기 세로 라인 각각은 상기 박스 이미지의 일 측에서 시작하여 상기 일 측과 마주보는 반대 측까지 연장되도록 출력되는 것을 특징으로 하는 테이블 생성 방법. - 제7항에 있어서,
상기 박스 이미지는,
상기 가로 라인 및 상기 세로 라인에 의해, 복수의 셀을 포함하도록 구획되는 것을 특징으로 하는 테이블 생성 방법. - 제8항에 있어서,
상기 복수의 기능 아이콘은 상기 가로 라인 및 상기 세로 라인의 적어도 일부를 삭제하는 기능이 매칭된 제4 기능 아이콘을 더 포함하고,
상기 테이블을 생성하는 단계에서는,
상기 제4 기능 아이콘이 선택된 후 상기 이미지에 가해지는 사용자 입력에 근거하여, 상기 가로 라인 및 상기 세로 라인의 적어도 일부를 삭제하는 것을 통해, 상기 복수의 셀 중 적어도 두개를 병합하는 것을 특징으로 하는 테이블 생성 방법. - 제8항에 있어서,
상기 복수의 셀 중, 상기 이미지에 포함된 테이블의 범주의 이름이 포함된 범주 셀을 특정하는 단계를 더 포함하는 것을 특징으로 하는 테이블 생성 방법. - 제10항에 있어서,
상기 작업 영역의 다른 일 영역에는,
상기 범주 셀이 특정되는 것에 근거하여, 상기 범주 셀에 포함된 범주의 이름이, 상기 범주 셀의 식별 정보와 함께 출력되는 것을 특징으로 하는 테이블 생성 방법. - 제10항에 있어서,
상기 복수의 셀 중 상기 범주 셀과 관련된 데이터 셀을 특정하는 단계를 더 포함하고,
상기 범주 셀과 관련된 상기 데이터 셀의 특정은,
상기 범주 셀에서 시작하는 기 설정된 방식의 입력에 근거하여 이루어지는 것을 특징으로 하는 테이블 생성 방법. - 제12항에 있어서,
상기 복수의 셀에서 복수의 범주 셀이 특정되고, 상기 복수의 범주 셀 중 제1 범주 셀에서 시작하는 기 설정된 방식의 입력에 의해 상기 제1 범주 셀과 다른 제2 범주 셀이 선택된 경우,
상기 제2 범주 셀이 선택되기 전까지 선택된 데이터 셀을 상기 제1 범주 셀과 관련된 데이터 셀로서 특정하는 것을 특징으로 하는 테이블 생성 방법. - 전자기기의 디스플레이부에 출력되는 작업영역에서 테이블을 생성하는 시스템에 있어서,
상기 시스템의 제어부는,
상기 작업 영역에 테이블을 포함하는 이미지를 출력하고,
사용자로부터, 상기 작업 영역의 일 영역에 포함된 복수의 기능 아이콘 중 어느 하나의 기능 아이콘을 선택받고,
상기 어느 하나의 기능 아이콘이 선택된 후 상기 이미지에 기 설정된 방식의 입력이 가해지면, 상기 기 설정된 방식의 입력을, 상기 이미지에서 상기 선택된 기능 아이콘에 대응되는 테이블 구성 요소를 인식 또는 특정하는 입력으로 처리하고, 상기 인식 또는 특정된 테이블 구성 요소에 해당하는 가이드 정보를 출력하며,
상기 인식 또는 특정된 테이블 구성요소를 이용하여, 상기 이미지에 포함된 테이블과 대응되는 구조를 갖는 테이블을 생성하는 것을 특징으로 하는 테이블 생성 시스템. - 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 기록매체에 저장 가능한 프로그램으로서,
상기 프로그램은,
어플리케이션에서 제공되는 작업 영역에 테이블을 포함하는 이미지를 출력하는 단계;
상기 작업 영역의 일 영역에 포함된 복수의 기능 아이콘 중 어느 하나의 기능 아이콘을 선택받는 단계;
상기 어느 하나의 기능 아이콘이 선택된 후 상기 이미지에 기 설정된 방식의 입력이 가해지면, 상기 기 설정된 방식의 입력을, 상기 이미지에서 상기 선택된 기능 아이콘에 대응되는 테이블 구성 요소를 인식 또는 특정하는 입력으로 처리하고, 상기 인식 또는 특정된 테이블 구성 요소에 해당하는 가이드 정보를 출력하는 단계; 및
상기 인식 또는 특정된 테이블 구성요소를 이용하여, 상기 이미지에 포함된 테이블과 대응되는 구조를 갖는 테이블을 생성하는 단계를 수행하도록 하는 명령어들을 포함하는 특징으로 하는 컴퓨터로 판독될 수 있는 기록매체에 저장 가능한 프로그램.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210023275A KR102655430B1 (ko) | 2021-02-22 | 2021-02-22 | 테이블 생성 방법 및 시스템 |
JP2022023364A JP7534016B2 (ja) | 2021-02-22 | 2022-02-18 | テーブル生成方法及びシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210023275A KR102655430B1 (ko) | 2021-02-22 | 2021-02-22 | 테이블 생성 방법 및 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220119873A KR20220119873A (ko) | 2022-08-30 |
KR102655430B1 true KR102655430B1 (ko) | 2024-04-08 |
Family
ID=83061075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210023275A KR102655430B1 (ko) | 2021-02-22 | 2021-02-22 | 테이블 생성 방법 및 시스템 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7534016B2 (ko) |
KR (1) | KR102655430B1 (ko) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101392739B1 (ko) | 2012-11-26 | 2014-05-09 | 주식회사 인프라웨어 | 터치 스크린 디스플레이를 통해 전자문서상에서 테이블을 생성하는 방법 및 장치 |
KR101484419B1 (ko) | 2013-12-17 | 2015-01-28 | 비플라이소프트(주) | 전자문서의 레이아웃 자동인식 시스템 및 레이아웃 자동인식 방법 |
KR101907029B1 (ko) * | 2017-08-24 | 2018-10-12 | (주) 더존비즈온 | 서식 자동화를 위한 테이블 생성 장치 및 방법 |
KR102005067B1 (ko) | 2018-10-25 | 2019-10-01 | 지의소프트 주식회사 | 딥러닝 알고리즘을 이용한 문서 데이터 저장 시스템 및 그 방법 |
JP2021504787A (ja) | 2017-12-01 | 2021-02-15 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | コグニティブな文書イメージのデジタル化のための方法、コンピュータ・プログラム及びシステム |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08329187A (ja) * | 1995-06-06 | 1996-12-13 | Oki Electric Ind Co Ltd | 文書読取装置 |
JPH113433A (ja) * | 1997-06-11 | 1999-01-06 | Hitachi Ltd | 表枠線の交点補正装置 |
JP6463066B2 (ja) | 2014-07-07 | 2019-01-30 | キヤノン株式会社 | 情報処理装置、情報処理方法、プログラム |
KR102309175B1 (ko) * | 2014-08-29 | 2021-10-06 | 삼성전자주식회사 | 스크랩 정보를 제공하는 전자 장치 및 그 제공 방법 |
-
2021
- 2021-02-22 KR KR1020210023275A patent/KR102655430B1/ko active IP Right Grant
-
2022
- 2022-02-18 JP JP2022023364A patent/JP7534016B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101392739B1 (ko) | 2012-11-26 | 2014-05-09 | 주식회사 인프라웨어 | 터치 스크린 디스플레이를 통해 전자문서상에서 테이블을 생성하는 방법 및 장치 |
KR101484419B1 (ko) | 2013-12-17 | 2015-01-28 | 비플라이소프트(주) | 전자문서의 레이아웃 자동인식 시스템 및 레이아웃 자동인식 방법 |
KR101907029B1 (ko) * | 2017-08-24 | 2018-10-12 | (주) 더존비즈온 | 서식 자동화를 위한 테이블 생성 장치 및 방법 |
JP2021504787A (ja) | 2017-12-01 | 2021-02-15 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | コグニティブな文書イメージのデジタル化のための方法、コンピュータ・プログラム及びシステム |
KR102005067B1 (ko) | 2018-10-25 | 2019-10-01 | 지의소프트 주식회사 | 딥러닝 알고리즘을 이용한 문서 데이터 저장 시스템 및 그 방법 |
Also Published As
Publication number | Publication date |
---|---|
JP2022128427A (ja) | 2022-09-01 |
JP7534016B2 (ja) | 2024-08-14 |
KR20220119873A (ko) | 2022-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kiessling et al. | eScriptorium: an open source platform for historical document analysis | |
JP7289047B2 (ja) | ブロックに基づく文書メタデータの抽出のための方法、コンピュータ・プログラム及びシステム | |
US10223344B2 (en) | Recognition and population of form fields in an electronic document | |
JP5284662B2 (ja) | ペンコンピュータシステム内にノードリンクダイアグラムを生成および編集する方法および装置 | |
CN104067293B (zh) | 矢量图分类引擎 | |
CN103838566A (zh) | 信息处理装置和信息处理方法 | |
CN105247509A (zh) | 检测并重构固定格式文档中的东亚布局特征 | |
CN108140018A (zh) | 创作用于基于文本的文档的视觉表示 | |
CN107203498A (zh) | 一种创建电子书的方法、系统及其用户终端和服务器 | |
KR102699224B1 (ko) | 테이블 인식 방법 및 시스템 | |
Abdul‐Rahman et al. | Constructive visual analytics for text similarity detection | |
US20230161952A1 (en) | Automatic semantic labeling of form fields with limited annotations | |
CN105144147A (zh) | 检测并重构固定格式文档中的从右到左文本方向、连字和变音符号 | |
Cui et al. | A mixed-initiative approach to reusing infographic charts | |
Esposito et al. | Adding machine learning and knowledge intensive techniques to a digital library service | |
Senthilkumar | AI-assisted Library Reconstruction | |
KR102655430B1 (ko) | 테이블 생성 방법 및 시스템 | |
Brückner et al. | Learning GUI completions with user-defined constraints | |
CN108345577A (zh) | 信息处理设备和方法 | |
KR102697516B1 (ko) | 테이블에 포함된 정보를 인식하는 문자 인식 에러에 강인한 글자 인식 방법 및 시스템 | |
KR101632951B1 (ko) | 온라인 학습 콘텐츠로의 변환을 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체 및 온라인 학습 콘텐츠로의 변환 방법 | |
KR102649429B1 (ko) | 반정형 문서로부터 정보를 추출하는 방법 및 시스템 | |
JP2020204855A (ja) | キーワード検出装置、及びキーワード検出方法 | |
KR102591757B1 (ko) | 디지털 참고서를 생산하기 위한 PDF 파일을 Semantic HTML 형태로 변환하기 위한 방법 및 장치 | |
KR102699223B1 (ko) | 테이블 생성 방법 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |