KR20220083223A - Method and system for providing deep learning-based menu - Google Patents
Method and system for providing deep learning-based menu Download PDFInfo
- Publication number
- KR20220083223A KR20220083223A KR1020200173249A KR20200173249A KR20220083223A KR 20220083223 A KR20220083223 A KR 20220083223A KR 1020200173249 A KR1020200173249 A KR 1020200173249A KR 20200173249 A KR20200173249 A KR 20200173249A KR 20220083223 A KR20220083223 A KR 20220083223A
- Authority
- KR
- South Korea
- Prior art keywords
- menu
- image
- information
- deep learning
- text
- Prior art date
Links
- 238000013135 deep learning Methods 0.000 title claims abstract description 174
- 238000000034 method Methods 0.000 title claims description 75
- 238000013507 mapping Methods 0.000 claims abstract description 24
- 230000015654 memory Effects 0.000 claims abstract description 24
- 238000006243 chemical reaction Methods 0.000 claims abstract description 22
- 238000013528 artificial neural network Methods 0.000 claims description 40
- 230000009466 transformation Effects 0.000 claims description 6
- 238000013136 deep learning model Methods 0.000 claims 1
- 238000012015 optical character recognition Methods 0.000 description 48
- 238000010586 diagram Methods 0.000 description 24
- 238000004891 communication Methods 0.000 description 18
- 238000000605 extraction Methods 0.000 description 18
- 238000013519 translation Methods 0.000 description 16
- 235000013305 food Nutrition 0.000 description 14
- 235000013547 stew Nutrition 0.000 description 12
- 230000000694 effects Effects 0.000 description 11
- 239000000284 extract Substances 0.000 description 11
- 238000013527 convolutional neural network Methods 0.000 description 10
- 238000001514 detection method Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 235000021109 kimchi Nutrition 0.000 description 5
- 238000010606 normalization Methods 0.000 description 4
- 235000010469 Glycine max Nutrition 0.000 description 3
- 244000068988 Glycine max Species 0.000 description 3
- 230000004913 activation Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011946 reduction process Methods 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000009193 crawling Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/12—Hotels or restaurants
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/53—Querying
- G06F16/532—Query formulation, e.g. graphical querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/53—Querying
- G06F16/538—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Library & Information Science (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Software Systems (AREA)
- Character Discrimination (AREA)
- Image Analysis (AREA)
Abstract
본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 시스템은, 적어도 하나 이상의 프로세서; 및 적어도 하나 이상의 메모리; 를 포함하고, 상기 메모리에 저장되고 상기 적어도 하나 이상의 프로세서에 의해 실행되어 딥러닝 기반의 메뉴판을 제공하는 적어도 하나의 어플리케이션으로서 상기 적어도 하나의 어플리케이션은, 메뉴판 이미지 내 텍스트 정보를 획득하고, 상기 메뉴판 이미지 내 텍스트 이외의 특정 오브젝트를 나타내는 객체 이미지를 획득하고, 상기 획득된 텍스트 정보와 상기 객체 이미지를 맵핑하여 페어링(pairing)하고, 상기 텍스트 정보에 대한 언어변환을 수행하여 번역 텍스트 정보를 획득하고, 상기 텍스트 정보, 상기 번역 텍스트 정보 및 상기 페어링된 객체 이미지 중 적어도 둘 이상에 기초하여 재구성된 메뉴판 콘텐츠를 제공한다. A system for providing a menu board based on deep learning according to an embodiment of the present invention includes: at least one processor; and at least one memory; including, at least one application stored in the memory and executed by the at least one processor to provide a deep learning-based menu board, wherein the at least one application obtains text information in a menu board image, and Obtaining an object image representing a specific object other than text in a menu board image, mapping the obtained text information and the object image to pair, and performing language conversion on the text information to obtain translated text information and provides menu board contents reconstructed based on at least two or more of the text information, the translated text information, and the paired object image.
Description
본 발명은 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템에 관한 것이다. 보다 상세하게는, 딥러닝을 기반으로 메뉴판 내 텍스트와 이미지를 추출하고, 추출된 텍스트와 이미지를 상호 매칭하여 재구성된 메뉴판을 제공하는 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템에 관한 것이다. The present invention relates to a method and system for providing a menu board based on deep learning. More specifically, it relates to a method and system for providing a menu board based on deep learning that extracts text and images in the menu board based on deep learning, and provides a reconstructed menu board by matching the extracted text and image with each other .
종래의 문자인식 기술은 스캐너를 통한 이미지 생성과 문서처리에 집중되어 있었으나, 모바일 단말 환경의 발전으로 사용자의 이동성이 활발해진 최근에는 모바일 카메라를 통한 영상 취득과 자연 영상(natural scene image)의 문자인식을 통한 정보 수집 및 서비스의 결합이 시급하게 요구되고 있다. Conventional character recognition technology has been focused on image generation and document processing through scanners, but recently, image acquisition through a mobile camera and character recognition of natural scene images have become more mobile with the development of mobile terminal environments. The combination of information collection and services through the
또한, 최근 들어 정보통신 및 교통과학 기술이 발달하고 세계화가 진행됨에 따라서 다양한 언어를 기반으로 제공되는 소정의 정보(예를 들면, 메뉴판 등)들을 접하게 되는 경우가 빈번하게 발생하고 있다. In addition, as information communication and traffic science technology develop and globalization progresses in recent years, it is frequently encountered with predetermined information (eg, menu boards) provided based on various languages.
그리하여 종래에는, 이종의 언어로 구현된 소정의 정보를 카메라를 통해 촬영하고, 촬영된 영상 내 문자를 변환하여 번역하여 주는 번역 기술(Translation technique)에 대한 연구가 활발히 진행되고 있다. Therefore, in the prior art, research on a translation technique for photographing predetermined information implemented in different languages through a camera and converting text in the photographed image to translate is being actively conducted.
그러나, 종래의 본 기술분야에서는, 메뉴판과 같은 소정의 정보를 번역하여 제공할 시, 해당 메뉴판 내 텍스트를 중심으로 데이터를 추출해 변환하여 제공함으로써, 텍스트 이외의 타 정보들(예를 들면, 이미지 등)은 손실된다는 문제가 있다. However, in the prior art, when translating and providing predetermined information such as a menu board, by extracting and converting data centering on the text in the menu board and providing it, other information other than text (for example, images, etc.) are lost.
예를 들면, 이종의 언어로 구현된 메뉴판을 본토 언어로 번역하여 확인하고자 하는 소비자가 있을 경우, 해당 소비자는 메뉴판 내 텍스트를 번역하여 제공되는 메뉴명이나 가격 등의 정보와 함께 해당 메뉴를 나타내는 이미지(사진) 정보도 확인하고자 한다. For example, if there is a consumer who wants to translate and check a menu board implemented in a different language into the native language, the consumer translates the text on the menu board and displays the menu along with information such as the menu name or price. I want to check the image (photo) information as well.
그러나 종래의 기술 수준에서는, 텍스트 이외의 이미지 정보까지 고려하여 새롭게 재구성된 정보를 제공하는 기술 개발이 미흡한 실정이다. However, at the level of the prior art, technology development for providing newly reconstructed information in consideration of image information other than text is insufficient.
또한, 메뉴판과 같은 소정의 정보를 확인할 시 해당 정보 내에는 포함되어 있지 않으나 해당 정보 내 텍스트와 관련되는 부가적인 정보를 더 제공하여 줄 수 있는 기술 또한 미비하여, 이를 위한 기술 도입이 필요시되고 있다. In addition, when checking predetermined information such as a menu board, it is not included in the information, but the technology to provide additional information related to the text in the information is also insufficient, so it is necessary to introduce a technology for this. have.
본 발명은, 딥러닝을 기반으로 메뉴판 내 텍스트와 이미지를 추출하고, 추출된 텍스트와 이미지를 상호 매칭하여 재구성된 메뉴판을 제공하는 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템을 구현하고자 한다. The present invention seeks to implement a deep learning-based menu board providing method and system that extracts text and images in the menu board based on deep learning, and provides a reconstructed menu board by matching the extracted text and image with each other .
자세히, 본 발명은, 메뉴판 내 텍스트와 이미지에 기반한 딥러닝을 수행하여 상호 매칭되는 텍스트와 이미지를 페어링(pairing)해 제공하는 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템을 구현하고자 한다. In detail, the present invention intends to implement a deep learning-based menu board providing method and system for pairing and providing matching text and images by performing deep learning based on text and images in the menu board.
또한, 본 발명은, 위와 같이 텍스트와 이미지에 대한 페어링을 수행할 시, 상기 텍스트에 대응되는 이미지가 부재하는 경우 딥러닝을 기초로 상기 텍스트에 대응되는 소정의 이미지를 획득하여 제공하는 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템을 구현하고자 한다. In addition, the present invention is based on deep learning that provides a predetermined image corresponding to the text based on deep learning when there is no image corresponding to the text when pairing the text and the image as described above. We want to implement a method for providing a menu board and its system.
또한, 본 발명은, 메뉴판으로부터 추출되는 특정 언어 기반의 텍스트를 딥러닝을 기초로 변환하여 소정의 타 언어로 번역해 제공하는 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템을 구현하고자 한다. In addition, the present invention intends to implement a method and system for providing a menu board based on deep learning that converts a specific language-based text extracted from a menu board based on deep learning and translates it into another predetermined language.
다만, 본 발명 및 본 발명의 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다. However, the technical problems to be achieved by the present invention and embodiments of the present invention are not limited to the technical problems described above, and other technical problems may exist.
본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 시스템은, 적어도 하나 이상의 프로세서; 및 적어도 하나 이상의 메모리; 를 포함하고, 상기 메모리에 저장되고 상기 적어도 하나 이상의 프로세서에 의해 실행되어 딥러닝 기반의 메뉴판을 제공하는 적어도 하나의 어플리케이션으로서 상기 적어도 하나의 어플리케이션은, 메뉴판 이미지 내 텍스트 정보를 획득하고, 상기 메뉴판 이미지 내 텍스트 이외의 특정 오브젝트를 나타내는 객체 이미지를 획득하고, 상기 획득된 텍스트 정보와 상기 객체 이미지를 맵핑하여 페어링(pairing)하고, 상기 텍스트 정보에 대한 언어변환을 수행하여 번역 텍스트 정보를 획득하고, 상기 텍스트 정보, 상기 번역 텍스트 정보 및 상기 페어링된 객체 이미지 중 적어도 둘 이상에 기초하여 재구성된 메뉴판 콘텐츠를 제공한다. A system for providing a menu board based on deep learning according to an embodiment of the present invention includes: at least one processor; and at least one memory; including, at least one application stored in the memory and executed by the at least one processor to provide a deep learning-based menu board, wherein the at least one application obtains text information in a menu board image, and Obtaining an object image representing a specific object other than text in a menu board image, mapping the obtained text information and the object image to pair, and performing language conversion on the text information to obtain translated text information and provides menu board contents reconstructed based on at least two or more of the text information, the translated text information, and the paired object image.
이?, 상기 텍스트 정보는, 상기 메뉴판 이미지 내 텍스트 중 메뉴명을 나타내는 메뉴명 정보와, 상기 메뉴판 이미지 내 텍스트 중 메뉴의 가격을 나타내는 가격 텍스트 정보와, 상기 메뉴판 이미지 내 텍스트 중 상기 메뉴명 정보와 상기 가격 텍스트 정보 이외의 텍스트를 나타내는 사이드 텍스트 정보 중 적어도 하나 이상을 포함하고, 상기 사이드 텍스트 정보는, 상기 메뉴에 대한 설명을 나타내는 메뉴 부가설명 텍스트 정보 및 상기 메뉴판을 제공하는 사업점명을 나타내는 상호명 텍스트 정보 중 적어도 하나 이상을 포함한다. The text information includes menu name information indicating a menu name among texts in the menu image, price text information indicating a menu price among texts in the menu image, and menu name information among texts in the menu image and at least one of side text information indicating text other than the price text information, wherein the side text information includes menu additional description text information indicating a description of the menu and a business name indicating a business store name providing the menu board It includes at least one or more of text information.
또한, 상기 어플리케이션은, 상기 텍스트 정보에 맵핑되는 객체 이미지가 부재하는 경우, 상기 텍스트 정보에 매칭되는 추천 이미지를 검출하여 상기 텍스트 정보와의 페어링을 수행한다. Also, when there is no object image mapped to the text information, the application detects a recommendation image matching the text information and performs pairing with the text information.
또한, 상기 추천 이미지는, 상기 메모리 내 복수의 객체 이미지 데이터 중에서 상기 메뉴명 정보에 매칭되는 객체 이미지이다. In addition, the recommendation image is an object image matching the menu name information among a plurality of object image data in the memory.
또한, 상기 어플리케이션은, 상기 메모리 내 데이터베이스 모듈에 저장된 상기 복수의 객체 이미지 데이터와, 상기 메뉴명 정보를 입력으로 하는 딥러닝을 수행하여 상기 추천 이미지를 검출하거나, 상기 복수의 객체 이미지 데이터 각각에 매칭된 태그어와, 상기 메뉴명 정보를 기반으로 상기 추천 이미지를 검출한다. In addition, the application detects the recommended image by performing deep learning to input the plurality of object image data stored in the database module in the memory and the menu name information, or matching each of the plurality of object image data The recommended image is detected based on the tag word and the menu name information.
또한, 상기 어플리케이션은, 상기 메모리와 연동되는 소셜 네트워크 서비스(Social Network Service, SNS) 상에서 상기 메뉴명 정보 및 상기 사이드 텍스트 정보 중 적어도 하나에 기초한 검색을 수행하여 상기 추천 이미지를 검출한다. In addition, the application detects the recommended image by performing a search based on at least one of the menu name information and the side text information on a social network service (SNS) linked with the memory.
또한, 상기 어플리케이션은, 상기 텍스트 정보를 사용자 입력에 따른 타겟 언어를 기반으로 변환하여 상기 번역 텍스트 정보를 획득한다. In addition, the application obtains the translated text information by converting the text information based on a target language according to a user input.
또한, 상기 어플리케이션은, 딥러닝 뉴럴 네트워크를 기반으로 상기 메뉴판 이미지 내 텍스트에 대한 특징정보를 추출하는 제 1 모듈과, 상기 추출된 특징정보를 기초로 상기 텍스트에 대한 위치정보를 가지는 초기 인코딩 정보를 생성하는 제 2 모듈과, 상기 생성된 초기 인코딩 정보에 기반한 형태 변환을 수행하여 상기 입력 이미지에 대한 2차원 정보를 유지한 어텐션 맵을 획득하는 제 3 모듈과, 상기 획득된 어텐션 맵에 기초한 딥러닝 모델을 통해 상기 메뉴판 이미지 내 텍스트를 감지하는 제 4 모듈에 기반하여 상기 메뉴판 이미지 내 텍스트 정보를 획득한다. In addition, the application includes a first module for extracting feature information about the text in the menu image based on a deep learning neural network, and initial encoding information having location information about the text based on the extracted feature information A second module for generating a second module, a third module for obtaining an attention map maintaining two-dimensional information on the input image by performing a shape transformation based on the generated initial encoding information; Text information in the menu board image is acquired based on a fourth module that detects text in the menu board image through a learning model.
한편, 본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 방법은, 컴퓨팅 장치에서 실행되는 어플리케이션이 딥러닝 기반의 메뉴판을 제공하는 방법으로서, 메뉴판 이미지 내 텍스트 정보를 획득하는 단계; 상기 메뉴판 이미지 내 텍스트 이외의 특정 오브젝트를 나타내는 객체 이미지를 획득하는 단계; 상기 획득된 텍스트 정보와 상기 객체 이미지를 맵핑하여 페어링(pairing)하는 단계; 상기 텍스트 정보에 대한 언어변환을 수행하여 번역 텍스트 정보를 획득하는 단계; 및 상기 텍스트 정보, 상기 번역 텍스트 정보 및 상기 페어링된 객체 이미지 중 적어도 둘 이상에 기초하여 재구성된 메뉴판 콘텐츠를 제공하는 단계를 포함한다. Meanwhile, a method for providing a menu board based on deep learning according to an embodiment of the present invention is a method for providing a menu board based on deep learning by an application executed in a computing device, the method comprising: acquiring text information in a menu board image; obtaining an object image representing a specific object other than text in the menu image; mapping the obtained text information and the object image to pairing; obtaining translated text information by performing language conversion on the text information; and providing menu board contents reconstructed based on at least two or more of the text information, the translated text information, and the paired object image.
본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템은, 딥러닝을 기반으로 메뉴판 내 텍스트와 이미지를 추출하고, 추출된 텍스트와 이미지를 상호 매칭하여 재구성된 메뉴판을 제공함으로써, 기존의 메뉴판을 사용자의 요구사항에 따른 형태로 생성해 제공할 수 있는 효과가 있다. A method and system for providing a menu board based on deep learning according to an embodiment of the present invention provide a reconstructed menu board by extracting text and an image in the menu board based on deep learning, and matching the extracted text and image with each other By doing so, there is an effect that the existing menu board can be created and provided in a form according to the user's requirements.
또한, 본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템은, 메뉴판으로부터 추출된 텍스트와 이미지에 기반한 딥러닝을 수행하여 상호 매칭되는 텍스트와 이미지를 페어링(pairing)해 제공함으로써, 추후 상기 메뉴판을 번역하는 등 재구성하여 제공할 시 메뉴명이나 가격 등의 텍스트 정보는 물론 해당 메뉴를 나타내는 이미지까지 더 포함하여 제공할 수 있고, 이를 통해 텍스트 이외의 타 정보에 대한 손실 최소화할 수 있는 효과가 있다. In addition, the method and system for providing a menu board based on deep learning according to an embodiment of the present invention perform deep learning based on text and images extracted from the menu board, and provide matching text and image by pairing By doing so, when reconfiguring and providing the menu board in the future, such as translating, it is possible to provide not only text information such as menu name or price, but also an image representing the menu, thereby minimizing the loss of other information other than text. can have an effect.
또한, 본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템은, 텍스트와 이미지에 대한 페어링을 수행할 시 상기 텍스트에 대응되는 이미지가 부재하는 경우, 딥러닝을 기초로 상기 텍스트에 대응되는 소정의 이미지를 획득하여 상기 페어링을 수행함으로써, 기존 메뉴판에 모든 메뉴 각각에 대한 이미지가 존재하지 않더라도 해당 메뉴를 나타내는 이미지를 검출해 함께 제공할 수 있고, 이를 통해 재구성되어 제공되는 메뉴판의 내용을 보다 정확하고 직관적으로 인지하게 함과 동시에 그 사용성 또한 향상시킬 수 있는 효과가 있다. In addition, in the deep learning-based menu board providing method and system according to an embodiment of the present invention, when an image corresponding to the text is absent when pairing text with an image, the text is based on deep learning By performing the pairing by acquiring a predetermined image corresponding to It has the effect of making the contents of the plate more accurate and intuitive, and at the same time improving its usability.
또한, 본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템은, 메뉴판으로부터 추출되는 특정 언어 기반의 텍스트를 딥러닝을 기초로 변환하여 소정의 타 언어로 번역해 제공함으로써, 익숙하지 않은 이종의 언어로 만들어진 메뉴판이더라도 손쉽게 해당 메뉴판의 내용을 확인하고 이용하게 할 수 있는 효과가 있다. In addition, the method and system for providing a menu board based on deep learning according to an embodiment of the present invention convert a specific language-based text extracted from the menu board based on deep learning and translate it into another language and provide it, Even if it is a menu board made in an unfamiliar language, it has the effect of making it easy to check and use the contents of the menu board.
다만, 본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 명확하게 이해될 수 있다. However, the effects obtainable in the present invention are not limited to the above-mentioned effects, and other effects not mentioned can be clearly understood from the description below.
도 1은 본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 서비스를 소비자 관점에서 제공하는 모습을 나타내는 개념도이다.
도 2는 본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 서비스를 사업점주 관점에서 제공하는 모습을 나타내는 개념도이다.
도 3은 본 발명의 실시예에 따른 컴퓨팅 장치의 내부 블록도이다.
도 4는 본 발명의 실시예에 따른 딥러닝 기반 광학문자인식(OCR) 모듈의 기능동작을 설명하는 개념도이다.
도 5는 본 발명의 실시예에 따른 광학문자인식(OCR) 모듈의 내부 블록도이다.
도 6은 본 발명의 실시예에 따른 제 1 모듈(CNN 기반 특징 추출부)의 내부 동작방식을 설명하는 도면의 일례이다.
도 7은 본 발명의 실시예에 따른 제 2 모듈(CNN 기반 정렬부)의 내부 동작방식을 설명하는 도면의 일례이다.
도 8은 본 발명의 실시예에 따른 제 1 모듈 및 제 2 모듈에서의 차원 데이터를 결합하는 방법을 설명하기 위한 도면의 일례이다.
도 9는 본 발명의 실시예에 따른 제 1 모듈 및 제 2 모듈에서의 차원 데이터를 기반으로 제 1 방식의 차원결합을 수행하는 방법을 설명하기 위한 도면의 일례이다.
도 10은 본 발명의 실시예에 따른 제 3 모듈(제 1 및 2 모듈 결합부)에 기반하여 인코딩 정보(제 2 어텐션 맵(attention map))의 아티팩트(artifacts)를 최소화한 모습의 일레이다.
도 11은 본 발명의 실시예에 따른 제 1 모듈 및 제 2 모듈에서의 차원 데이터를 기반으로 제 2 방식의 차원결합을 수행하는 방법을 설명하기 위한 도면의 일례이다.
도 12는 본 발명의 실시예에 따른 제 4 모듈(CNN 기반 문자 인식부)의 내부 동작방식을 설명하는 도면의 일례이다.
도 13은 본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공방법을 설명하기 위한 흐름도이다.
도 14는 본 발명의 실시예에 따른 메뉴판 이미지를 나타내는 모습의 일례이다.
도 15는 본 발명의 실시예에 따른 페어링(pairing)을 수행하는 방법을 설명하기 위한 도면의 일례이다.
도 16은 본 발명의 실시예에 따른 추천 이미지를 제공하고 페어링(pairing)을 수행하는 방법을 설명하기 위한 도면의 일례이다.
도 17은 본 발명의 실시예에 따른 메뉴판 콘텐츠를 나타내는 모습의 일례이다. 1 is a conceptual diagram illustrating a state in which a deep learning-based menu board providing service is provided from a consumer's point of view according to an embodiment of the present invention.
2 is a conceptual diagram illustrating a state in which a deep learning-based menu board providing service is provided from the perspective of a business owner according to an embodiment of the present invention.
3 is an internal block diagram of a computing device according to an embodiment of the present invention.
4 is a conceptual diagram illustrating the functional operation of a deep learning-based optical character recognition (OCR) module according to an embodiment of the present invention.
5 is an internal block diagram of an optical character recognition (OCR) module according to an embodiment of the present invention.
6 is an example of a diagram illustrating an internal operation method of the first module (CNN-based feature extraction unit) according to an embodiment of the present invention.
7 is an example of a diagram illustrating an internal operation method of a second module (CNN-based alignment unit) according to an embodiment of the present invention.
8 is an example of a diagram for explaining a method of combining dimensional data in a first module and a second module according to an embodiment of the present invention.
9 is an example of a view for explaining a method of performing the dimensional combining of the first method based on the dimensional data in the first module and the second module according to an embodiment of the present invention.
10 is an example of a state in which artifacts of encoding information (a second attention map) are minimized based on a third module (a first and second module combining unit) according to an embodiment of the present invention.
11 is an example of a diagram for explaining a method of performing a second method of dimensional combining based on dimensional data in a first module and a second module according to an embodiment of the present invention.
12 is an example of a diagram for explaining an internal operation method of a fourth module (CNN-based character recognition unit) according to an embodiment of the present invention.
13 is a flowchart illustrating a method for providing a menu board based on deep learning according to an embodiment of the present invention.
14 is an example of an image of a menu board according to an embodiment of the present invention.
15 is an example of a diagram for explaining a method of performing pairing according to an embodiment of the present invention.
16 is an example of a diagram for explaining a method of providing a recommendation image and performing pairing according to an embodiment of the present invention.
17 is an example of a state of displaying menu board contents according to an embodiment of the present invention.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다. 이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다. 또한, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다. 또한, 도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도시된 바에 한정되지 않는다.Since the present invention can apply various transformations and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail in the detailed description. Effects and features of the present invention, and a method for achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various forms. In the following embodiments, terms such as first, second, etc. are used for the purpose of distinguishing one component from another, not in a limiting sense. Also, the singular expression includes the plural expression unless the context clearly dictates otherwise. In addition, terms such as include or have means that the features or components described in the specification are present, and do not preclude the possibility that one or more other features or components will be added. In addition, in the drawings, the size of the components may be exaggerated or reduced for convenience of description. For example, since the size and thickness of each component shown in the drawings are arbitrarily indicated for convenience of description, the present invention is not necessarily limited to the illustrated bar.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, and when described with reference to the drawings, the same or corresponding components are given the same reference numerals, and the overlapping description thereof will be omitted. .
본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 시스템(이하, 메뉴판 제공 시스템)은, 메뉴판 내 텍스트와 이미지를 추출하고, 추출된 텍스트와 이미지를 상호 매칭하여 재구성된 신규 메뉴판을 제공하는 딥러닝 기반의 메뉴판 제공 서비스(이하, 통합 메뉴판 인식 서비스)를 제공할 수 있다. A deep learning-based menu board providing system (hereinafter, a menu board providing system) according to an embodiment of the present invention extracts text and images in the menu board, and matches the extracted text and image to create a new menu board reconstructed It is possible to provide a deep learning-based menu board service (hereinafter, integrated menu board recognition service).
자세히, 실시예에서 메뉴판 제공 시스템은, 통합 메뉴판 인식 서비스에 기반하여, 특정 언어로 제작된 메뉴판을 촬영한 이미지(메뉴판 이미지)로부터 텍스트 및 이미지를 추출하고, 추출된 텍스트 및 이미지에 기반한 딥러닝을 수행하여 상기 텍스트와 대응되는 이미지를 상호 맵핑하는 페어링 서비스(Pairing service)를 제공할 수 있다. In detail, in the embodiment, the menu board providing system extracts text and images from an image (menu board image) of a menu board produced in a specific language based on the integrated menu board recognition service, and extracts text and images from the extracted text and image. It is possible to provide a pairing service that maps the text and the image corresponding to each other by performing deep learning based on the deep learning.
또한, 실시예에서 메뉴판 제공 시스템은, 통합 메뉴판 인식 서비스를 기초로 상기 메뉴판 이미지로부터 추출된 텍스트에 기반한 딥러닝을 수행하여 상기 특정 언어의 메뉴판을 소정의 타 언어 기반의 메뉴판으로 번역(변환)하는 메뉴판 번역 서비스를 제공할 수 있다. In addition, in an embodiment, the menu board providing system performs deep learning based on the text extracted from the menu board image based on the integrated menu board recognition service to convert the menu board of the specific language into a menu board based on another language. A menu board translation service that translates (translates) can be provided.
또한, 실시예에서 메뉴판 제공 시스템은, 상기 텍스트와 이미지에 대한 페어링을 수행할 시 상기 텍스트에 대응되는 이미지가 부재하는 경우, 딥러닝을 기초로 상기 텍스트에 대응되는 소정의 추천 이미지를 제공하는 이미지 추천 서비스를 제공할 수 있다. In addition, in an embodiment, the menu board providing system provides a predetermined recommended image corresponding to the text based on deep learning when an image corresponding to the text is absent when pairing the text and the image An image recommendation service may be provided.
한편, 실시예에 따른 메뉴판 제공 시스템은, 사용자에 따라서 통합 메뉴판 인식 서비스에 기초한 다양한 서비스 플랫폼을 제공할 수 있다. Meanwhile, the menu board providing system according to the embodiment may provide various service platforms based on the integrated menu board recognition service according to users.
여기서, 실시예에 따른 사용자는, 메뉴판을 확인하고 주문을 수행하고자 하는 소비자 또는 메뉴판을 등록 또는 제공하는 사업점주 등을 포함할 수 있다. Here, the user according to the embodiment may include a consumer who wants to check the menu board and place an order, or a business owner who registers or provides the menu board.
도 1은 본 발명의 실시예에 따른 통합 메뉴판 인식 서비스를 소비자 관점에서 제공하는 모습을 나타내는 개념도이다. 1 is a conceptual diagram illustrating a state in which an integrated menu board recognition service is provided from a consumer's point of view according to an embodiment of the present invention.
자세히, 도 1을 참조하면, 실시예에서 메뉴판 제공 시스템은, 사용자가 소비자인 경우, 메뉴판 내 텍스트를 타 언어로 번역하여 제공하는 메뉴판 번역 서비스를 제공할 수 있다. In detail, referring to FIG. 1 , in the embodiment, the menu board providing system may provide a menu board translation service in which the text in the menu board is translated into another language when the user is a consumer.
구체적으로, 실시예에서 메뉴판 제공 시스템은, 통합 메뉴판 인식 서비스에 기초한 사용자 인터페이스를 기반으로 메뉴판 번역 서비스를 실행하는 사용자(여기서, 소비자) 입력을 획득할 수 있다. Specifically, in an embodiment, the menu board providing system may acquire a user (here, consumer) input for executing a menu board translation service based on a user interface based on the integrated menu board recognition service.
또한, 실시예에서 메뉴판 제공 시스템은, 획득된 사용자 입력에 기초하여 메뉴판 번역 서비스가 실행되면, 상기 사용자 인터페이스를 기반으로 메뉴판의 언어를 변환하여 번역하고자 하는 타겟 언어(target language) 입력을 획득할 수 있다. Further, in an embodiment, when the menu board translation service is executed based on the obtained user input, the menu board providing system converts the language of the menu board based on the user interface and receives a target language input to be translated. can be obtained
즉, 메뉴판 제공 시스템은, 메뉴판 내 텍스트를 위와 같이 획득된 타겟 언어로 번역할 수 있다. That is, the menu board providing system may translate the text in the menu board into the target language obtained as above.
또한, 실시예에서 메뉴판 제공 시스템은, 위와 같이 타겟 언어가 설정되면 번역하고자 하는 메뉴판을 촬영한 이미지인 메뉴판 이미지를 획득할 수 있다. Also, in the embodiment, when the target language is set as described above, the menu board providing system may acquire a menu board image that is an image of a menu board to be translated.
또한, 실시예에서 메뉴판 제공 시스템은, 획득된 메뉴판 이미지를 입력 데이터로 하여 상기 메뉴판 이미지 내 텍스트를 상기 타겟 언어로 변환하는 딥러닝을 수행할 수 있다. Also, in an embodiment, the menu board providing system may perform deep learning to convert the text in the menu board image into the target language by using the obtained menu board image as input data.
그리고 메뉴판 제공 시스템은, 위와 같이 수행된 딥러닝을 기초로 획득되는 출력 데이터 및/또는 기타 데이터(실시예에서, 객체 이미지 등) 등을 기초로 새롭게 재구성된 메뉴판인 메뉴판 콘텐츠를 생성하여 제공할 수 있다. And the menu board providing system creates menu board contents, which are newly reconstructed menu boards, based on the output data and/or other data (in the embodiment, object images, etc.) obtained based on the deep learning performed as described above. can provide
도 2는 본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 서비스를 사업점주 관점에서 제공하는 모습을 나타내는 개념도이다.2 is a conceptual diagram illustrating a state in which a deep learning-based menu board providing service is provided from the perspective of a business owner according to an embodiment of the present invention.
또한, 도 2를 참조하면, 실시예에서 메뉴판 제공 시스템은, 사용자가 사업점주인 경우, 메뉴판 내 텍스트 및 이미지를 추출하고 상호 매칭하여 재구성해 소정의 플랫폼 상에 등록 또는 제공할 수 있도록 하는 메뉴판 등록/제공 서비스를 구현할 수 있다. In addition, referring to FIG. 2 , in the embodiment, the menu board providing system extracts text and images in the menu board and reconfigures them to match each other when the user is a business owner so that it can be registered or provided on a predetermined platform. It is possible to implement a menu board registration/providing service.
보다 상세히, 실시예에서 메뉴판 제공 시스템은, 통합 메뉴판 인식 서비스에 기초한 사용자 인터페이스를 기반으로 메뉴판 등록/제공 서비스를 실행하는 사용자(여기서, 사업점주) 입력을 획득할 수 있다.In more detail, in an embodiment, the menu board providing system may acquire an input from a user (here, a business owner) executing a menu board registration/providing service based on a user interface based on an integrated menu board recognition service.
또한, 실시예에서 메뉴판 제공 시스템은, 획득된 사용자 입력에 기초하여 메뉴판 등록/제공 서비스가 실행되면, 등록/제공하고자 하는 메뉴판을 촬영한 이미지인 메뉴판 이미지를 획득할 수 있다. Also, in the embodiment, when the menu board registration/provided service is executed based on the obtained user input, the menu board providing system may acquire a menu board image, which is an image of a menu board to be registered/provided.
또한, 실시예에서 메뉴판 제공 시스템은, 획득된 메뉴판 이미지를 입력 데이터로 하여 상기 메뉴판 이미지 내 적어도 하나 이상의 텍스트와 적어도 하나 이상의 이미지를 추출하고, 추출된 텍스트 별 대응되는 이미지를 상호 매칭하는 딥러닝을 수행할 수 있다. In addition, in an embodiment, the menu board providing system extracts at least one text and at least one image in the menu board image by using the obtained menu board image as input data, and matches corresponding images for each extracted text. Deep learning can be performed.
그리고 메뉴판 제공 시스템은, 위처럼 수행된 딥러닝에 기초하여 재구성된 메뉴판인 메뉴판 콘텐츠를 생성해 제공할 수 있다. In addition, the menu board providing system may generate and provide menu board content, which is a reconfigured menu board, based on the deep learning performed as described above.
본 발명의 실시예에서 위와 같은 통합 메뉴판 인식 서비스를 제공하는 메뉴판 제공 시스템은, 컴퓨팅 장치를 기반으로 구현될 수 있다. In an embodiment of the present invention, the menu board providing system for providing the integrated menu board recognition service as described above may be implemented based on a computing device.
이하에서는, 첨부된 도면을 참조하여 메뉴판 제공 시스템을 구현하는 컴퓨팅 장치에 대해 상세히 설명한다. Hereinafter, a computing device implementing the menu board providing system will be described in detail with reference to the accompanying drawings.
- 컴퓨팅 장치(Computing Device; 200) - Computing Device (200)
도 3은 본 발명의 실시예에 따른 컴퓨팅 장치(200)의 내부 블록도이다. 3 is an internal block diagram of a
도 3을 참조하면, 본 발명의 실시예에 따른 컴퓨팅 장치(200)는, 통합 메뉴판 인식 서비스를 제공하는 메뉴판 어플리케이션이 설치된 소정의 컴퓨팅 디바이스일 수 있다. Referring to FIG. 3 , the
자세히, 하드웨어적 관점에서 컴퓨팅 장치(200)는, 메뉴판 어플리케이션이 설치된 모바일 타입 컴퓨팅 디바이스 및/또는 데스크탑 타입 컴퓨팅 디바이스를 포함할 수 있다. In detail, in terms of hardware, the
여기서, 모바일 타입 컴퓨팅 디바이스는, 메뉴판 어플리케이션이 설치된 스마트 폰이나 테블릿 PC와 같은 모바일 장치일 수 있다. Here, the mobile type computing device may be a mobile device such as a smart phone or a tablet PC on which a menu board application is installed.
예를 들어, 모바일 타입 컴퓨팅 디바이스는, 스마트 폰(smart phone), 휴대폰, 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 태블릿 PC(tablet PC) 등이 포함될 수 있다. For example, the mobile type computing device may include a smart phone, a mobile phone, a digital broadcasting terminal, personal digital assistants (PDA), a portable multimedia player (PMP), a tablet PC, and the like.
또한, 데스크탑 타입 컴퓨팅 디바이스는, 메뉴판 어플리케이션이 설치된 고정형 데스크탑 PC, 노트북 컴퓨터(laptop computer), 울트라북(ultrabook)과 같은 퍼스널 컴퓨터 등과 같이 유/무선 통신을 기반으로 통합 메뉴판 인식 서비스를 실행하기 위한 프로그램이 설치된 장치 등을 포함할 수 있다. In addition, the desktop-type computing device executes an integrated menu board recognition service based on wired/wireless communication, such as a fixed desktop PC, a laptop computer, and a personal computer such as an ultrabook in which a menu board application is installed. It may include a device in which a program is installed for the purpose.
한편, 기능적 관점에서 컴퓨팅 장치(200)는, 복수의 모듈을 포함하여 구현될 수 있다. Meanwhile, from a functional point of view, the
자세히, 실시예에서 컴퓨팅 장치(200)는, 메인 모듈(210), 서브 모듈(220), 데이터베이스 모듈(230), 통신 모듈(240), 메모리(250) 및 프로세서(260)를 포함할 수 있다. In detail, in an embodiment, the
<메인 모듈(Main Module; 210)><Main Module (210)>
실시예에서 컴퓨팅 장치(200)의 메인 모듈(210)은, 메뉴판 이미지 내 텍스트를 감지하는 광학문자인식 모듈(100)과, 메뉴판 이미지 내 이미지(실시예에서, 객체 이미지)를 감지하는 이미지 검출모듈(212)을 포함할 수 있다. In an embodiment, the
1)One) 광학문자인식 모듈(Optical Character Recognition(OCR) Module; 100)Optical Character Recognition (OCR) Module; 100
본 발명의 실시예에 따른 광학문자인식 모듈(100)은, 딥러닝을 수행하여 메뉴판 이미지 내 텍스트를 감지할 수 있다. The optical
실시예에서, 광학문자인식 모듈(100)은, 메뉴판 이미지 내 텍스트를 감지하여 적어도 하나 이상의 메뉴명 정보와, 적어도 하나 이상의 가격 텍스트 정보를 획득할 수 있다. In an embodiment, the optical
또한, 실시예에서 광학문자인식 모듈(100)은, 메뉴판 이미지 내 텍스트를 감지하여 메뉴명 및 가격 텍스트 정보 이외의 텍스트에 기반한 사이드 텍스트 정보(실시예에서, 메뉴 부가설명 텍스트 정보 및/또는 상호명 텍스트 정보 등)를 획득할 수 있다. In addition, in the embodiment, the optical
이하의 실시예에서는, 이러한 광학문자인식 모듈(100)이 복수의 모듈(실시예에서, 제 1 내지 4 모듈)에 기반하여 구현되는 것으로 설명하나, 실시예에 따라서 Mask Text Spotter, CRAFT 및/또는 DAN 등과 같은 딥러닝 기반의 문자인식기에 기반하여 구현될 수도 있는 등 공지된 알고리즘을 이용하여 구현될 수도 있으며, 본 발명의 실시예에서는 메뉴판 이미지 내 텍스트를 감지하는 알고리즘 자체를 한정하거나 제한하지는 않는다. 그러나, 광학문자인식의 정확성의 측면에 있어서 본 발명의 실시예에 따른 복수의 모듈(제 1 내지 4 모듈)을 기반으로 광학문자인식 모듈(100)을 구현하는 것이 가장 바람직한 실시예일 것이다. In the following embodiments, the optical
도 4는 본 발명의 실시예에 따른 딥러닝 기반 광학문자인식 모듈(100)의 기능동작을 설명하는 개념도이고, 도 5는 본 발명의 실시예에 따른 광학문자인식 모듈(100)의 내부 블록도이다. 4 is a conceptual diagram illustrating the functional operation of the deep learning-based optical
도 4 및 도 5를 참조하면, 본 발명의 실시예에서 광학문자인식 모듈(100)는, 서로 다른 기능을 수행하는 복수의 딥러닝 모듈에 기반하여, 입력 이미지 내 텍스트의 특징과 위치 정보에 기반한 인코딩 정보(실시예에서, attention map)를 획득하고, 획득된 인코딩 정보를 기초로 상기 입력 이미지 내 문자인식을 수행하는 딥러닝 기반 광학문자인식(OCR) 서비스(이하, 문자인식 서비스)를 제공할 수 있다. 4 and 5, in an embodiment of the present invention, the optical
자세히, 실시예에서 광학문자인식 모듈(100)는, 복수의 딥러닝 모듈로서 적어도 하나의 인코더 딥러닝 서버(110), 적어도 하나의 인코딩 스키마 변환서버(120) 및 적어도 하나의 디코더 딥러닝 서버(130)를 포함할 수 있다. In detail, in an embodiment, the optical
이때, 본 발명의 실시예에서는 광학문자인식 모듈(100)가 적어도 하나의 인코더 딥러닝 서버(110), 적어도 하나의 인코딩 스키마 변환서버(120) 및 적어도 하나의 디코더 딥러닝 서버(130)를 포함하는 것에 기준하여 설명하나, 실시예에 따라서 인코더 딥러닝 서버(110), 인코딩 스키마 변환서버(120) 및 디코더 딥러닝 서버(130) 중 적어도 하나 이상이 별도의 장치로 구현될 수도 있는 등 다양한 실시예 또한 가능할 수 있다. At this time, in an embodiment of the present invention, the optical
실시예에서, 위와 같은 딥러닝 모듈은, 딥러닝 뉴럴 네트워크(Deep-learning neural network)에 기반하여 구현될 수 있다. In an embodiment, the deep learning module as above may be implemented based on a deep-learning neural network.
여기서, 상기 딥러닝 뉴럴 네트워크는, 컨볼루션 뉴럴 네트워크(CNN, Convolution Neural Network, 예컨대, 유-넷 컨볼루션 뉴럴 네트워크(U-net Convolution Neural Network))와 같은 딥러닝 뉴럴 네트워크를 포함할 수 있으며, 본 발명의 실시예에서는 딥러닝 뉴럴 네트워크 토폴로지 자체를 한정하거나 제한하지는 않는다. Here, the deep learning neural network may include a deep learning neural network such as a convolutional neural network (CNN, Convolution Neural Network, for example, U-net Convolution Neural Network), The embodiment of the present invention does not limit or limit the deep learning neural network topology itself.
또한, 실시예에서 위와 같은 딥러닝 모듈 각각은, 소정의 트레이닝 데이터 셋(Training Data Set)에 기초하여 학습될 수 있다. In addition, each of the deep learning modules as described above in the embodiment may be learned based on a predetermined training data set (Training Data Set).
예를 들면, 딥러닝 모듈은, 다양한 형태의 문자들을 포함하는 복수의 문서를 스캐닝한 이미지 데이터 집합으로 구현되는 트레이닝 데이터 셋에 기반하여, 소정의 방식에 따라 학습될 수 있다. For example, the deep learning module may be learned according to a predetermined method based on a training data set implemented as an image data set obtained by scanning a plurality of documents including various types of characters.
이때, 상기 소정의 방식은, Hebbian Learning (Hebbian Rule), Perceptron Rule, Gradient Descent(Delta Rule, Least Mean Square) 및/또는 Back propagation 방식 등을 포함할 수 있으며, 본 발명의 실시예에서는 딥러닝 뉴럴 네트워크의 학습방식 자체를 한정하거나 제한하지는 않는다. In this case, the predetermined method may include Hebbian Learning (Hebbian Rule), Perceptron Rule, Gradient Descent (Delta Rule, Least Mean Square) and/or Back propagation method, and in an embodiment of the present invention, a deep learning neural It does not limit or limit the learning method of the network itself.
다시 돌아와서, 실시예에서 위와 같은 딥러닝 모듈을 포함하는 광학문자인식 모듈(100)는, 복수의 딥러닝 모듈 각각의 학습된 딥러닝 뉴럴 네트워크에 기반하여 구현되는 문자인식 딥러닝 뉴럴 네트워크와 연동할 수 있다. Coming back, in the embodiment, the optical
또한, 실시예에서 광학문자인식 모듈(100)는, 연동되는 딥러닝 뉴럴 네트워크를 기반으로 수행되는 딥러닝에 기초하여, 광학문자인식(OCR)을 수행하고자 하는 입력 이미지 내 텍스트(비정형 텍스트(예컨대, 곡선형 텍스트 등)를 포함할 수 있음)의 특징정보 및 위치 정보를 추출할 수 있다. In addition, in the embodiment, the optical
또한, 광학문자인식 모듈(100)는, 딥러닝에 기반하여, 위와 같이 추출된 정보에 기초한 초기 인코딩 정보 즉, 제 1 어텐션 맵(Early attention map)을 획득할 수 있다. Also, the optical
또한, 실시예에서 광학문자인식 모듈(100)는, 딥러닝에 기반하여, 획득된 초기 인코딩 정보(제 1 어텐션 맵)에 대한 형태(shape) 변환을 수행할 수 있다. Also, in an embodiment, the optical
즉, 광학문자인식 모듈(100)는, 초기 인코딩 정보에 기초한 인코딩 스키마 변환을 수행할 수 있다. That is, the optical
그리고 광학문자인식 모듈(100)는, 위와 같이 수행된 형태 변환을 통해 디코더에 입력하기 위한 최종적인 인코딩 정보 즉, 제 2 어텐션 맵(attention map)을 획득할 수 있다. In addition, the optical
또한, 실시예에서 광학문자인식 모듈(100)는, 딥러닝에 기반하여, 획득된 인코딩 정보(제 2 어텐션 맵)를 기초로 입력 이미지 내 문자(비정형 문자(예컨대, 곡선형 문자 등)를 포함할 수 있음)인식을 수행할 수 있다. In addition, in the embodiment, the optical
자세히, 광학문자인식 모듈(100)는, 딥러닝을 기초로 인코딩 정보에 기반한 디코딩을 수행하여 입력 이미지 내 문자를 감지하는 광학문자인식(OCR)을 수행할 수 있다. In detail, the optical
이하, 첨부된 도면을 참조하여 광학문자인식 모듈(100)의 딥러닝 모듈 각각에 대해 상세히 설명한다. Hereinafter, each of the deep learning modules of the optical
<인코더 딥러닝 서버><Encoder Deep Learning Server>
본 발명의 실시예에서 인코더 딥러닝 서버(110)는, 딥러닝 뉴럴 네트워크와 연동하여, 입력 이미지 내 텍스트(비정형 텍스트(예컨대, 곡선형 텍스트 등)를 포함할 수 있음)의 특징정보 및 위치정보를 추출할 수 있다. In an embodiment of the present invention, the encoder
또한, 실시예에서 인코더 딥러닝 서버(110)는, 추출된 특징정보 및 위치정보에 기초하여 초기 인코딩 정보 즉, 제 1 어텐션 맵(Early attention map)을 획득할 수 있다. Also, in an embodiment, the encoder
자세히, 실시예에서 인코더 딥러닝 서버(110)는, 인코더 딥러닝 뉴럴 네트워크(이하, 인코더)에 기반하여 구현될 수 있다. In detail, in an embodiment, the encoder
이때, 실시예에 따른 인코더는, 제 1 모듈인 CNN 기반 특징 추출부(111: 이하, 특징 추출부)와, 제 2 모듈인 CNN 기반 정렬부(112: 이하, 정렬부)를 포함할 수 있다. In this case, the encoder according to the embodiment may include a CNN-based
도 6은 본 발명의 실시예에 따른 제 1 모듈(CNN 기반 특징 추출부(111))의 내부 동작방식을 설명하는 도면의 일례이다. 6 is an example of a diagram illustrating an internal operation method of the first module (CNN-based feature extraction unit 111) according to an embodiment of the present invention.
도 6을 참조하면, 구체적으로 인코더의 특징 추출부(111: 제 1 모듈)는, 딥러닝 뉴럴 네트워크에 기반하여 입력 이미지 내 텍스트에 대한 특징정보(FPN_Features)를 추출할 수 있다. Referring to FIG. 6 , specifically, the feature extraction unit 111 (first module) of the encoder may extract feature information (FPN_Features) for text in an input image based on a deep learning neural network.
여기서, 실시예에 따른 특징정보는, 입력 이미지를 컨볼루션 레이어 블록에 통과시켰을 때, 높이(height, H), 너비(width, W) 및 출력 채널 수(Number of output channels, C)로 출력되는 데이터를 의미한다. Here, the feature information according to the embodiment is outputted as a height (height, H), a width (width, W) and the number of output channels (C) when the input image is passed through the convolutional layer block means data.
예를 들어, 특징 추출부(111: 제 1 모듈)는, 복수의 컨볼루션 레이어로 구성된 resnet45 기반의 딥러닝 뉴럴 네트워크를 이용하여 입력 이미지 내 텍스트에 대한 특징정보를 추출하는 딥러닝을 수행할 수 있다. For example, the feature extraction unit 111 (first module) may perform deep learning to extract feature information about text in an input image using a resnet45-based deep learning neural network composed of a plurality of convolutional layers. have.
이때, 실시예에서 특징 추출부(111: 제 1 모듈)의 딥러닝 뉴럴 네트워크를 구현하는 내부 파라미터 설계에 대한 설명은 도 3을 참조하여 대체한다. At this time, the description of the internal parameter design for implementing the deep learning neural network of the feature extraction unit 111 (the first module) in the embodiment is replaced with reference to FIG. 3 .
도 7은 본 발명의 실시예에 따른 제 2 모듈(CNN 기반 정렬부(112))의 내부 동작방식을 설명하는 도면의 일례이다. 7 is an example of a diagram illustrating an internal operation method of the second module (CNN-based alignment unit 112) according to an embodiment of the present invention.
한편, 도 7을 참조하면, 실시예에서 인코더의 정렬부(112: 제 2 모듈)는, 딥러닝 뉴럴 네트워크를 기반으로 특징 추출부(111: 제 1 모듈)로부터 출력되는 데이터(즉, 특징정보)에 기초하여 해당하는 입력 이미지 내 텍스트에 대한 위치정보를 가지는 초기 인코딩 정보 즉, 제 1 어텐션 맵(early attention map)을 획득할 수 있다. Meanwhile, referring to FIG. 7 , in the embodiment, the alignment unit 112 (second module) of the encoder includes data output from the feature extraction unit 111 (first module) based on the deep learning neural network (ie, feature information). ), initial encoding information having location information on text in the corresponding input image, that is, a first attention map may be obtained.
자세히, 실시예에서 정렬부(112: 제 2 모듈)는, 특징 추출부(111: 제 1 모듈)의 출력 데이터를 기반으로 제 1 내지 4단계의 컨볼루션 레이어(convolution layer)에 대한 제 1 피드 포워드(Feed forward) 프로세스를 수행할 수 있다. In detail, in the embodiment, the alignment unit 112 (second module) is based on the output data of the feature extraction unit 111 (first module), and the first feed for the convolution layers of
이때, 실시예에서 제 1 내지 4 단계 컨볼루션 레이어는, 배치 정규화(Batch normalization) 방식으로 동작할 수 있으며, 배치 정규화에서의 하이퍼 파라미터(Hyper-parameter)의 초기 설정값은 ‘c 64; eps 1e-05; momentum 0.1’일 수 있다. In this case, in the embodiment, the first to fourth convolutional layers may operate in a batch normalization method, and the initial setting value of the hyper-parameter in the batch normalization is ‘
또한, 제 1 내지 4 단계 컨볼루션 레이어 각각에 적용되는 활성화 함수(Activation Function)는, 정류 선형 유닛(Rectified Linear Unit, ReLU)일 수 있다. Also, an activation function applied to each of the first to fourth convolutional layers may be a rectified linear unit (ReLU).
또한, 제 1 내지 4 단계 컨볼루션 레이어는, ‘k 3x3; s 2x2; p 1x1; c 64’와 같이 구성될 수 있다. In addition, the first to fourth convolutional layers are 'k 3x3; s 2x2; p 1x1; It can be configured like c 64'.
위와 같이, 특징 추출부(111: 제 1 모듈)의 출력 데이터(FPN_Features)에 기반하여 제 1 내지 4단계의 컨볼루션 레이어에 대한 제 1 피드 포워드(Feed forward) 프로세스가 수행되면, 실시예에서 정렬부(112: 제 2 모듈)는, 제 1 내지 4 단계 디컨볼루션 레이어에 기반한 제 2 피드 포워드 프로세스를 수행할 수 있다. As described above, when the first feed forward process for the convolutional layers of
자세히, 실시예에서 정렬부(112: 제 2 모듈)는, 제 1 내지 4 단계 컨볼루션 레이어에서의 출력 데이터에 기초하여 제 1 내지 4단계의 디컨볼루션 레이어(deconvolution layer)에 대한 제 2 피드 포워드 프로세스를 수행할 수 있다. In detail, in the embodiment, the sorting unit 112 (second module) provides a second feed to the deconvolution layers of the first to fourth steps based on the output data from the first to fourth convolutional layers. A forward process can be performed.
이때, 실시예에서 제 1 내지 4 단계 디컨볼루션 레이어는, 배치 정규화(Batch normalization) 방식으로 동작할 수 있으며, 배치 정규화에서의 하이퍼 파라미터(Hyper-parameter)의 초기 설정값은 ‘c 64; eps 1e-05; momentum 0.1’일 수 있다. In this case, in the embodiment, the first to fourth deconvolution layers may operate in a batch normalization method, and the initial setting value of the hyper-parameter in the batch normalization is ‘
또한, 제 1 내지 4 단계 디컨볼루션 레이어 중 제 1 내지 3 단계 디컨볼루션 레이어는, 활성화 함수(Activation Function)로 정류 선형 유닛(ReLU)을 이용할 수 있고, 제 4 단계 디컨볼루션 레이어는, 활성화 함수로 시그모이드(Sigmoid) 함수를 이용할 수 있다. In addition, the first to third-stage deconvolution layers among the first to fourth-stage deconvolution layers may use a rectified linear unit (ReLU) as an activation function, and the fourth-stage deconvolution layer, A sigmoid function can be used as an activation function.
또한, 제 1 내지 4 단계 디컨볼루션 레이어는, ‘k 3x3; s 1x1; c 64’와 같이 구성될 수 있다. In addition, the first to fourth deconvolution layers are, 'k 3x3; s 1x1; It can be configured like c 64'.
더하여, 실시예에서 제 1 내지 4 단계 디컨볼루션 레이어는, 이중선형보간법(bilinear interpolate)에 기초하여 딥러닝을 수행할 수 있으며, 이때의 크기(scale) 값은 ‘2’로 설정될 수 있다. In addition, in the embodiment, the first to fourth deconvolution layers may perform deep learning based on bilinear interpolate, and the scale value at this time may be set to '2'. .
또한, 제 1 내지 4 단계 디컨볼루션 레이어는, 패딩 레이어(Padding layers)가 ‘reflectionPad2d: 1’로 설정될 수 있다. In addition, in the first to fourth deconvolution layers, padding layers may be set to 'reflectionPad2d: 1'.
즉, 실시예에서 정렬부(112: 제 2 모듈)는, 특징 추출부(111: 제 1 모듈)에서의 출력 데이터(FPN_Features)를 입력 데이터로 하여, 위와 같이 구현될 수 있는 딥러닝 뉴럴 네트워크를 기초로 제 1 내지 4 단계 컨볼루션 및 디컨볼루션 레이어에 기반한 딥러닝을 수행할 수 있고, 이를 통해 해당하는 입력 이미지 내 텍스트에 대한 초기 인코딩 정보(제 1 어텐션 맵)을 획득할 수 있다. That is, in the embodiment, the alignment unit 112 (second module) uses the output data (FPN_Features) from the feature extraction unit 111 (first module) as input data, and a deep learning neural network that can be implemented as described above. As a basis, deep learning based on the first to fourth steps of convolution and deconvolution layers may be performed, and through this, initial encoding information (first attention map) for text in the corresponding input image may be obtained.
도 8은 본 발명의 실시예에 따른 제 1 모듈 및 제 2 모듈에서의 차원 데이터를 결합하는 방법을 설명하기 위한 도면의 일례이고, 도 9는 본 발명의 실시예에 따른 제 1 모듈 및 제 2 모듈에서의 차원 데이터를 기반으로 제 1 방식의 차원결합을 수행하는 방법을 설명하기 위한 도면의 일례이다. 8 is an example of a diagram for explaining a method of combining dimensional data in a first module and a second module according to an embodiment of the present invention, and FIG. 9 is a first module and a second module according to an embodiment of the present invention. It is an example of a drawing for explaining a method of performing the dimensional combination of the first method based on the dimensional data in the module.
한편, 도 8 및 도 9를 참조하면, 실시예에서 인코더는, 특징 추출부(111: 제 1 모듈)에서의 차원 데이터와 정렬부(112: 제 2 모듈)에서의 차원 데이터에 기반하여, 제 1 방식의 차원결합을 수행할 수 있다. Meanwhile, referring to FIGS. 8 and 9 , in the embodiment, the encoder, based on the dimensional data in the feature extraction unit 111 (first module) and the dimensional data in the alignment unit 112 (second module), One way of dimensional combining can be performed.
자세히, 실시예에서 특징 추출부(111: 제 1 모듈)는, 딥러닝을 수행하여 입력 이미지의 차원을 ‘1*출력 채널 수(Number of output channels, C)*높이(Height, H)*너비(Width, W)’로 출력할 수 있다. In detail, in the embodiment, the feature extraction unit 111 (the first module) performs deep learning to determine the dimension of the input image as '1 * Number of output channels (C) * Height (Height, H) * Width (Width, W)' can be printed.
즉, 특징 추출부(111: 제 1 모듈)는, 입력 데이터(실시예에서, 입력 이미지 등)의 차원을 ‘1*C*H*W’로 변환하여 제 1 차원정보를 획득할 수 있다. That is, the feature extraction unit 111 (the first module) may obtain the first dimension information by converting the dimension of the input data (in the embodiment, the input image, etc.) into '1*C*H*W'.
한편, 실시예에서 정렬부(112: 제 2 모듈)는, 딥러닝을 수행하여 입력 이미지에 대한 차원을 ‘최대 채널 수(Max number of channels, T)*1*높이(Height, H)*너비(Width, W)’로 출력할 수 있다. On the other hand, in the embodiment, the alignment unit 112 (second module) performs deep learning to determine the dimension of the input image as 'Max number of channels (T) * 1 * Height (Height, H) * Width (Width, W)' can be printed.
즉, 정렬부(112: 제 2 모듈)는, 입력 데이터(실시예에서, 특징정보 등)의 차원을 ‘T*1*H*W’로 변화시켜 제 2 차원정보를 획득할 수 있다. That is, the alignment unit 112 (second module) may obtain the second dimension information by changing the dimension of the input data (in the embodiment, feature information, etc.) to 'T*1*H*W'.
또한, 실시예에서 상기 특징 추출부(111: 제 1 모듈) 및 상기 정렬부(112: 제 2 모듈)를 포함하는 인코더는, 위와 같이 획득된 제 1 차원정보 및 제 2 차원정보에 기반하여 인코더에서의 1) 높이(Height, H) 및 너비(Width, W) 정보 차원결합을 수행할 수 있다. In addition, in the embodiment, the encoder including the feature extracting unit 111 (first module) and the alignment unit 112: second module is an encoder based on the first and second dimension information obtained as above. In 1) height (Height, H) and width (Width, W) information dimensional combination can be performed.
자세히, 실시예에서 인코더는, 제 1 차원정보인 ‘1*C*H*W’ 및 제 2 차원정보인‘T*1*H*W’를 기반으로 높이(H) 및 너비(W) 정보 차원결합을 수행하여 ‘T*C*(HxW)’로 구현되는 제 3 차원정보를 획득할 수 있다. In detail, in the embodiment, the encoder includes height (H) and width (W) information based on '1*C*H*W' as the first dimension information and 'T*1*H*W' as the second dimension information 3D information implemented as 'T*C*(HxW)' may be obtained by performing dimensional combining.
이때, 실시예에 따른 인코더는, 2) ‘(HxW)’에 대한 차원결합을 더 수행할 수 있다. In this case, the encoder according to the embodiment may further perform 2) dimensional combining for '(HxW)'.
그리하여 실시예에서 인코더는, 특징 추출 후 ‘(C*T)’의 높이(H) 정보가 압축된 형태의 제 4 차원정보를 최종적으로 획득할 수 있다. Thus, in the embodiment, the encoder can finally obtain fourth-dimensional information in the form of compressed height (H) information of '(C*T)' after feature extraction.
즉, 실시예에서 인코더는, 기존 ‘H*W’에 기반한 2차원(2D) 정보를 1차원(1D)화시키는 인코딩을 수행할 수 있다. That is, in the embodiment, the encoder may perform encoding that converts two-dimensional (2D) information based on existing 'H*W' into one-dimensional (1D).
<인코딩 스키마 변환서버><Encoding schema conversion server>
본 발명의 실시예에서 인코딩 스키마 변환서버(120)는, 딥러닝 뉴럴 네트워크와 연동하여, 정렬부(112: 제 2 모듈)로부터 획득되는 초기 인코딩 정보(제 1 어텐션 맵)에 대한 형태(shape) 변환을 수행할 수 있다. In an embodiment of the present invention, the encoding
즉, 실시예에서 인코딩 스키마 변환서버(120)는, 초기 인코딩 정보에 기초한 인코딩 스키마 변환을 수행할 수 있다. That is, in the embodiment, the encoding
그리고 인코딩 스키마 변환서버(120)는, 위와 같이 수행된 형태 변환에 기초하여 디코더에 입력하기 위한 최종적인 인코딩 정보 즉, 제 2 어텐션 맵(attention map)을 획득할 수 있다. In addition, the encoding
본 발명의 실시예에서, 특징 추출부(111: 제 1 모듈)로부터 출력되는 데이터(실시예에서, 특징정보)를 기반으로 정렬부(112: 제 2 모듈)에서 해당하는 입력 이미지 내 텍스트에 대한 위치정보를 가지는 인코딩 정보를 추출할 시, 일반적인 디컨볼루션(deconv) 방식을 사용하는 경우 소정의 아티팩트(artifacts)가 발생할 수 있다. In an embodiment of the present invention, based on data (in the embodiment, feature information) output from the feature extraction unit 111 (first module), the alignment unit 112 (second module) for text in the corresponding input image When extracting encoding information having location information, if a general deconvolution method is used, certain artifacts may occur.
위와 같이 소정의 아티팩트(예컨대, 제 2 어텐션 맵 내 소정의 왜곡, 잡음 등)를 가지는 인코딩 정보를 입력 데이터로하여 딥러닝 뉴럴 네트워크(즉, 실시예에서 제 4 모듈(131))가 디코딩을 수행하는 경우, 해당 입력 데이터 전반에 걸친 아티팩트(artifacts)로 인하여 텍스트 이외의 오브젝트 등을 포함하는 잡음 및/또는 왜곡 등의 영향을 받을 수 있고, 이는 결과적으로 디코딩의 결과 즉, 광학문자인식(OCR) 결과의 품질 저하를 초래할 수 있다. As described above, a deep learning neural network (ie, the
도 10은 본 발명의 실시예에 따른 제 3 모듈(제 1 및 2 모듈 결합부(121))에 기반하여 인코딩 정보(제 2 어텐션 맵(attention map))의 아티팩트(artifacts)를 최소화한 모습의 일레이다. 10 is a view of minimizing artifacts of encoding information (a second attention map) based on a third module (first and second module combining unit 121) according to an embodiment of the present invention; it's ele
그리하여, 도 10을 참조하면, 본 발명의 실시예에서 인코딩 스키마 변환서버(120)는, 특징 추출부(111: 제 1 모듈) 및 정렬부(112: 제 2 모듈)로부터 획득되는 초기 인코딩 정보에서의 아티팩트(artifacts)를 최소화하기 위하여, 별도의 인코딩 프로세스를 구현하는 디컨볼루션 블록(deconvolution block)을 사용해 인코딩 스키마 변환을 수행할 수 있고, 이를 통해 디코더(실시예에서, 제 4 모듈(131))에 입력될 최종적 형태의 인코딩 정보(즉, 제 2 어텐션 맵)을 생성할 수 있다. Thus, referring to Figure 10, in the embodiment of the present invention, the encoding
자세히, 실시예에서 인코딩 스키마 변환서버(120)는, 인코딩 스키마 변환 딥러닝 뉴럴 네트워크를 기반으로 구현될 수 있다. In detail, in an embodiment, the encoding
이때, 실시예에서 인코딩 스키마 변환 딥러닝 뉴럴 네트워크는, 제 3 모듈인 제 1 및 2 모듈 결합부(121: 이하, 결합부)를 포함할 수 있다. In this case, in the embodiment, the encoding schema transformation deep learning neural network may include a first and second module combining unit 121 (hereinafter referred to as a combining unit) that is a third module.
보다 상세히, 실시예에 따른 결합부(121: 제 3 모듈)는, 딥러닝 뉴럴 네트워크에 기반하여 정렬부(112: 제 2 모듈)로부터 출력되는 데이터(즉, 실시예에서 제 1 어텐션 맵)에 기반한 별도의 인코딩 프로세스를 수행할 수 있다. In more detail, the combiner 121 (third module) according to the embodiment is based on the deep learning neural network, and the data output from the aligner 112 (second module) (that is, the first attention map in the embodiment) is A separate encoding process can be performed based on
일반적으로 입력 이미지 내에서 곡선(curved) 등의 특성을 가지며 구현되는 비정형 텍스트의 경우에는, 높이(Height, H)와 너비(Width, W)에 기반한 2차원 정보를 최대한으로 유지하는 것이 중요하다. In general, in the case of atypical text that is implemented with characteristics such as curved in an input image, it is important to maintain two-dimensional information based on height (Height, H) and width (Width, W) as much as possible.
그러나 상술된 바와 같이 인코더에서 초기 인코딩 정보(제 1 어텐션 맵)를 구현하는 차원결합에서는, 기존 ‘H*W’에 기반한 2차원(2D) 정보를 1차원(1D)화되게 하는 인코딩이 수행되며, 이때 높이(H) 및 너비(W) 개별 정보 각각에 대한 손실(loss)이 발생할 수 있다. However, in the dimensional combination that implements the initial encoding information (the first attention map) in the encoder as described above, encoding is performed so that the two-dimensional (2D) information based on the existing 'H*W' is converted into one-dimensional (1D). , in this case, a loss may occur for each of the height (H) and width (W) individual information.
도 11은 본 발명의 실시예에 따른 제 1 모듈 및 제 2 모듈에서의 차원 데이터를 기반으로 제 2 방식의 차원결합을 수행하는 방법을 설명하기 위한 도면의 일례이다. 11 is an example of a diagram for explaining a method of performing a second method of dimensional combining based on dimensional data in a first module and a second module according to an embodiment of the present invention.
그리하여, 도 11을 참조하면, 본 발명의 실시예에서 결합부(121: 제 3 모듈)는, 인코더에서 특징 추출부(111: 제 1 모듈)의 특징 추출 이후 정렬부(112: 제 2 모듈)에서 (C*T)의 H 정보가 압축된 형태로 출력되는 제 1 어텐션 맵을, 높이(H)와 너비(W)를 포함하는 2차원 정보를 최대한 유지하는 형태인 (C*(H*W)) 형태로 구현할 수 있다. Thus, referring to FIG. 11 , in the embodiment of the present invention, the combining unit 121 (third module) is an aligning unit 112: second module after feature extraction of the feature extracting unit 111: first module in the encoder. The first attention map, in which H information of (C*T) is output in a compressed form, is (C*(H*W) )) can be implemented in the form
본 발명의 실시예에서는, 결합부(121: 제 3 모듈)가 인코더와는 별도의 장치로 구현되는 것에 기준하여 설명하나, 이는 일례일 뿐 실시예에 따라서 인코더가 결합부(121: 제 3 모듈)을 포함하여 정렬부(112: 제 2 모듈)의 동작 시 결합부(121: 제 3 모듈)의 기능 동작을 포함하여 동작할 수 있는 등 다양한 실시예 또한 가능하다. In the embodiment of the present invention, the description is based on that the coupling unit 121 (third module) is implemented as a device separate from the encoder, but this is only an example. ), including the aligning unit (112: second module) when the operation of the coupling unit (121: the third module) can be operated including the functional operation, etc., various embodiments are also possible.
구체적으로, 본 발명의 실시예에서 결합부(121: 제 3 모듈)는, 상술된 특징 추출부(111: 제 1 모듈)의 제 1 차원정보와 정렬부(112: 제 2 모듈)의 제 2 차원정보에 기초하여, 제 2 방식의 차원결합을 수행할 수 있다. Specifically, in the embodiment of the present invention, the combining unit 121 (third module) includes the first dimension information of the above-described feature extracting unit 111 (first module) and the second of the aligning unit 112 (second module). Based on the dimension information, the second method of dimensional combining may be performed.
보다 상세히, 실시예에서 결합부(121: 제 3 모듈)는, 특징 추출부(111: 제 1 모듈)의 제 1 차원정보인 ‘1*C*H*W’ 및 정렬부(112: 제 2 모듈)의 제 2 차원정보인 ‘T*1*H*W’에 기반하여, 1) 최대 채널 수(Max number of channels, T) 및 출력 채널 수(Number of output channels, C) 채널 차원결합을 수행할 수 있다. In more detail, in the embodiment, the combining unit 121 (third module) includes '1*C*H*W', which is the first dimension information of the feature extracting unit 111: the first module, and the aligning unit 112: second Based on 'T*1*H*W', which is the second dimension information of the module), 1) The maximum number of channels (Max number of channels, T) and the number of output channels (Number of output channels, C) channel dimensional combination can be done
즉, 실시예에서 결합부(121: 제 3 모듈)는, ‘1*C*H*W’ 및 ‘T*1*H*W’에 기반한 T 및 C 채널 차원결합을 수행할 수 있고, 이를 통해 ‘(TxC)*HxW’로 구현되는 제 3 차원정보를 획득할 수 있다. That is, in the embodiment, the combining unit 121 (third module) may perform T and C channel dimensional combining based on '1*C*H*W' and 'T*1*H*W', and this 3D information implemented as '(TxC)*HxW' can be obtained through this.
위와 같이 제 3 차원정보를 획득한 이후, 실시예에서 결합부(121: 제 3 모듈)는, 2) 높이(Height, H) 및 너비(Width, W) 정보 차원결합을 수행할 수 있다. After obtaining the third dimension information as described above, in an embodiment, the combiner 121 (third module) may perform 2) dimension combination of height (Height, H) and width (Width, W) information.
자세히, 실시예에서 결합부(121: 제 3 모듈)는, ‘(TxC)*HxW’로 구현되는 제 3 차원정보에 기초하여 높이(H) 및 너비(W) 정보 차원결합을 수행할 수 있고, 이를 통해‘(TxC)*(HxW)’로 구현되는 제 4 차원정보를 획득할 수 있다. In detail, in the embodiment, the combining unit 121 (third module) may perform dimensional combining of height (H) and width (W) information based on the third dimension information implemented as '(TxC)*HxW' and , through this, fourth-dimensional information implemented as '(TxC)*(HxW)' can be obtained.
계속해서, 제 4 차원정보를 획득한 결합부(121: 제 3 모듈)는, 획득된 제 4 차원정보를 기초로 3) 1x1 컨볼루션 레이어(1x1 conv layer)를 이용한 차원 축소 프로세스를 수행할 수 있다. Subsequently, the combiner 121 (third module) that has obtained the fourth dimension information may perform a dimensionality reduction process using 3) a 1x1 convolution layer (1x1 convolution layer) based on the obtained fourth dimension information. have.
구체적으로, 실시예에서 결합부(121: 제 3 모듈)는, ‘(TxC)*(HxW)’로 구현되는 제 4 차원정보에 대한 차원 축소 프로세스를 1x1 컨볼루션 레이어(1x1 conv layer)에 기반하여 수행할 수 있다. Specifically, in the embodiment, the combining unit 121 (third module) performs a dimensionality reduction process for the fourth dimension information implemented as '(TxC)*(HxW)' based on a 1x1 convolution layer (1x1 conv layer). can be done by
그리고 결합부(121: 제 3 모듈)는, 상기 차원 축소 프로세스를 수행을 통하여 ‘C*(HxW)’로 구현되는 제 5 차원정보를 획득할 수 있다. In addition, the combiner 121 (third module) may acquire fifth dimension information implemented as 'C*(HxW)' by performing the dimension reduction process.
즉, 실시예에서 결합부(121: 제 3 모듈)는, 특징 추출부(111: 제 1 모듈)로부터 획득되는 제 1 차원정보(1*C*H*W)와 정렬부(112: 제 2 모듈)로부터 획득되는 제 2 차원정보(T*1*H*W)를 기초로 제 2 방식의 차원결합을 수행함으로써, 기존의 ‘H*W’에 기반한 2차원(2D) 정보를 그대로 유지하는 차원결합 수행할 수 있다. That is, in the embodiment, the combining unit 121 (third module) includes the first dimension information (1*C*H*W) obtained from the feature extracting unit 111: the first module and the aligning unit 112: second By performing the second method of dimensional combining based on the second dimension information (T*1*H*W) obtained from the module), the two-dimensional (2D) information based on the existing 'H*W' Dimensional combining can be performed.
정리하면, 본 발명의 실시예에서 결합부(121: 제 3 모듈)는, 제 1 어텐션 맵의 형태(shape)와는 달리, 입력 이미지에 대한 2차원 정보의 손실을 최소화한 형태의 제 2 어텐션 맵(인코딩 정보)을 생성할 수 있다. In summary, in the embodiment of the present invention, the combiner 121 (third module) is a second attention map in a form that minimizes the loss of two-dimensional information about the input image, unlike the shape of the first attention map. (encoding information) can be created.
또한, 실시예에서 결합부(121: 제 3 모듈)는, 입력 이미지 내 2차원 정보(height 및 width 정보)를 최대한 유지함과 동시에 디코더의 입력 데이터 형태에 매칭되는 형태(shape)인 제 2 어텐션 맵(인코딩 정보)을 생성할 수 있다. In addition, in the embodiment, the combiner 121 (third module) maintains two-dimensional information (height and width information) in the input image as much as possible, and at the same time, the second attention map, which is a shape matching the input data shape of the decoder. (encoding information) can be created.
그리하여 결합부(121: 제 3 모듈)는, 해당하는 제 2 어텐션 맵(인코딩 정보)이 디코더(즉, 제 4 모듈(131))의 입력 데이터로서 동작하게 할 수 있고, 이를 통해 입력 이미지 내 2차원 정보를 최대한으로 유지한 형태의 입력 데이터에 기초하여 디코딩이 수행되게 할 수 있다. Thus, the combiner 121 (third module) may cause the corresponding second attention map (encoding information) to operate as input data of the decoder (ie, the fourth module 131), and through this, 2 in the input image Decoding may be performed based on input data in a form in which dimensional information is maximally maintained.
이와 같이, 실시예에서 결합부(121: 제 3 모듈)는, 입력 이미지 내 2차원 정보의 손실을 최소화하는 인코딩 정보(제 2 어텐션 맵)을 제공함으로써, 인코딩 정보 내 아티팩트(예컨대, 제 2 어텐션 맵 내 소정의 왜곡 및/또는 잡음 등)를 최소화할 수 있고, 이를 통해 비정형 텍스트(예컨대, 곡선형 텍스트 등)를 포함하는 텍스트에 대한 딥러닝 기반의 광학문자인식(OCR) 성능을 향상시킬 수 있다. As such, in the embodiment, the combiner 121 (third module) provides encoding information (second attention map) that minimizes the loss of two-dimensional information in the input image, thereby providing artifacts (eg, second attention) in the encoding information. It is possible to minimize certain distortion and/or noise in the map), and through this, it is possible to improve the deep learning-based optical character recognition (OCR) performance of text including unstructured text (eg, curved text, etc.) have.
<디코더 딥러닝 서버><Decoder Deep Learning Server>
본 발명의 실시예에서 디코더 딥러닝 서버(130)는, 딥러닝 뉴럴 네트워크와 연동하여, 결합부(121: 제 3 모듈)로부터 획득되는 인코딩 정보(제 2 어텐션 맵(attention map))를 기초로 입력 이미지 내 문자(비정형 문자(예컨대, 곡선형 문자 등)를 포함할 수 있음)인식을 수행할 수 있다. In an embodiment of the present invention, the decoder
즉, 실시예에서 디코더 딥러닝 서버(130)는, 딥러닝을 기초로 인코딩 정보에 기반한 디코딩을 수행하여 입력 이미지 내 문자를 감지하는 광학문자인식(OCR)을 수행할 수 있다. That is, in the embodiment, the decoder
자세히, 실시예에서 디코더 딥러닝 서버(130)는, 디코더 딥러닝 뉴럴 네트워크(이하, 디코더)를 기반으로 구현될 수 있다. In detail, in an embodiment, the decoder
이때, 실시예에에 따른 디코더는, 제 4 모듈인 CCN 기반 문자 인식부(131: 이하, 문자 인식부)를 포함할 수 있다. In this case, the decoder according to the embodiment may include a CCN-based character recognition unit 131 (hereinafter referred to as a character recognition unit) that is a fourth module.
도 12는 본 발명의 실시예에 따른 제 4 모듈(CNN 기반 문자 인식부(131))의 내부 동작방식을 설명하는 도면의 일례이다. 12 is an example of a diagram for explaining an internal operation method of the fourth module (CNN-based character recognition unit 131) according to an embodiment of the present invention.
보다 상세히, 도 12를 참조하면, 실시예에서 문자 인식부(131: 제 4 모듈)는, 딥러닝 뉴럴 네트워크에 기반하여 결합부(121: 제 3 모듈)로부터 출력되는 인코딩 정보(제 2 어텐션 맵)에 기초한 디코딩을 수행해 입력 이미지 내 문자를 감지할 수 있다. In more detail, referring to FIG. 12 , in the embodiment, the character recognition unit 131 (fourth module) includes encoding information (second attention map) output from the combiner 121 (third module) based on a deep learning neural network. ) to detect characters in the input image.
이때, 실시예에 따른 문자 인식부(131: 제 4 모듈)는, 트랜스포머 모델(Transformer model)의 디코더를 기반으로 구현될 수 있다. In this case, the character recognition unit 131 (fourth module) according to the embodiment may be implemented based on a decoder of a transformer model.
자세히, 디코딩 과정에서 일반적인 어텐션(attention) 방식을 이용하는 경우, 디코더에서 출력 문자를 예측하는 매 시점(time step)마다 인코더(및/또는 결합부(121: 제 3 모듈))로부터의 전체 입력 데이터를 다시 한 번씩 참고해야 한다. In detail, if a general attention method is used in the decoding process, the entire input data from the encoder (and/or the combiner 121: the third module) at every time step at which the decoder predicts the output character It should be noted once again.
이러한 방식에서 디코더는, 전체 입력 데이터를 모두 동일한 비율로 참고하는 것이 아니라 해당 시점에서 예측해야 할 문자와 연관이 있는 입력 데이터 부분에 좀 더 집중(attention)하게 되는데, 이러한 특성으로 인하여 이전 상태의 영향을 받는 문제가 발생할 수 있다. In this way, the decoder does not refer to the entire input data at the same rate, but rather concentrates on the part of the input data that is related to the character to be predicted at the time. There may be problems with receiving
그리하여 최근에는, 이전 상태의 영향을 최소화하는 트랜스포머 모델 방식이 주로 사용되고 있다. Therefore, in recent years, the transformer model method that minimizes the influence of the previous state is mainly used.
참고적으로, 트랜스포머 모델(트랜스포머 인식기) 방식에서는, 어텐션을 자기자신에게 수행하는 셀프 어텐션(self-attention)을 기반으로 디코딩이 진행됨으로써, 이전 상태의 영향을 최소화할 수 있다는 장점이 있다. For reference, in the transformer model (transformer recognizer) method, there is an advantage that decoding is performed based on self-attention, which is performed on the self-attention, so that the influence of the previous state can be minimized.
이하, 트랜스포머 모델에 대한 자세한 설명은, ‘Vaswani,A shish, et al. "Attentioni s all you need." Advances in neural information processing systems. 2017.’ 논문으로 대체한다. Hereinafter, for a detailed description of the transformer model, ‘Vaswani, A shish, et al. "Attentioni's all you need." Advances in neural information processing systems. 2017.’ is replaced with the thesis.
이때, 상기 논문에서의 트랜스포머 모델은, 해당 트랜스포머 모델 내에 인코더와 디코더 구조를 포함하며, 상기 인코더 및 디코더는 모두 유사한 구조로 구현되어 있다. In this case, the transformer model in the thesis includes an encoder and a decoder structure in the corresponding transformer model, and both the encoder and the decoder are implemented in a similar structure.
그러나 위와 같은 구조에 기반한 문자인식은, 입력 이미지 내 텍스트의 위치정보를 추출하는데 비효율적이며 그 정확성 또한 저하되는 문제가 발생할 수 있다. However, the character recognition based on the above structure is inefficient in extracting the positional information of the text in the input image, and the accuracy thereof may be deteriorated.
그리하여 본 발명의 실시예에서는, 상기 트랜스포머 모델의 디코더만을 이용하여 문자 인식부(131: 제 4 모듈)를 구현할 수 있고, 입력 이미지 내 텍스트의 특징과 위치 정보를 효과적으로 추출하여 인코딩을 수행하는 인코더(및/또는 결합부(121: 제 3 모듈))로부터 획득되는 제 2 어텐션 맵(인코딩 정보)을 상기 문자 인식부(131: 제 4 모듈)에 입력하여 딥러닝에 기반한 광학문자인식(OCR)을 수행할 수 있다. Thus, in the embodiment of the present invention, the character recognition unit 131 (fourth module) can be implemented using only the decoder of the transformer model, and the encoder ( and/or input the second attention map (encoding information) obtained from the coupling unit 121 (the third module) into the character recognition unit 131 (the fourth module) to perform deep learning-based optical character recognition (OCR). can be done
여기서, 실시예에 따른 문자 인식부(131: 제 4 모듈)의 딥러닝 뉴럴 네트워크를 구현하는 내부 설계에 대한 설명은 도 9를 참조하여 대체한다. Here, the description of the internal design for implementing the deep learning neural network of the character recognition unit 131 (fourth module) according to the embodiment is replaced with reference to FIG. 9 .
즉, 실시예에서 문자 인식부(131: 제 4 모듈)는, 트랜스포머 모델의 디코더에 기반하여 도 9와 같이 구현될 수 있고, 위와 같이 구현된 문자 인식부(131: 제 4 모듈)는 인코더 및/또는 결합부(121: 제 3 모듈)로부터 출력되는 인코딩 정보(제 2 어텐션 맵)를 입력 데이터로 하여 딥러닝을 수행할 수 있다. That is, in the embodiment, the character recognition unit 131 (fourth module) may be implemented as shown in FIG. 9 based on the decoder of the transformer model, and the character recognition unit 131 (fourth module) implemented as above includes an encoder and / Alternatively, deep learning may be performed using the encoding information (the second attention map) output from the combiner 121 (third module) as input data.
그리고 문자 인식부(131: 제 4 모듈)는, 상기 딥러닝을 수행하여 해당하는 입력 이미지 내 문자를 감지하는 광학문자인식(OCR)을 수행할 수 있다. In addition, the character recognition unit 131 (fourth module) may perform optical character recognition (OCR) for detecting characters in a corresponding input image by performing the deep learning.
또한, 문자 인식부(131: 제 4 모듈)는, 위와 같이 감지된 문자 데이터를 소정의 방식(예컨대, 디스플레이 출력 등)으로 출력하여 제공할 수 있다. Also, the character recognition unit 131 (the fourth module) may output and provide the detected character data in a predetermined manner (eg, display output, etc.).
이와 같이, 본 발명의 실시예에서는 셀프 어텐션에 기반하여 이전 상태의 영향을 최소화하는 트랜스포머 모델의 디코더를 기반으로 문자 인식부(131: 제 4 모듈)를 구현함으로써, 본 발명의 실시예에 따른 인코더 및/또는 결합부(121: 제 3 모듈)의 장점과 공지된 트랜스포머 모델의 디코더의 장점을 취합한 딥러닝 기반의 광학문자인식(OCR) 모델을 구현할 수 있다. As described above, in the embodiment of the present invention, the character recognition unit 131 (fourth module) is implemented based on the decoder of the transformer model that minimizes the influence of the previous state based on self-attention, so that the encoder according to the embodiment of the present invention And/or it is possible to implement a deep learning-based optical character recognition (OCR) model that combines the advantages of the combiner 121 (third module) and the decoder of the known transformer model.
또한, 이상과 같이 본 발명의 실시예에서는, 입력 이미지 내 텍스트의 특징과 위치 정보를 빠르고 정확하게 추출하여 초기 인코딩 정보(제 1 어텐션 맵)를 출력하는 인코더와, 상기 인코더에서 출력되는 초기 인코딩 정보를 변환하여 상기 초기 인코딩 정보에서의 아티팩트(artifacts)를 최소화한 형태의 인코딩 정보(제 2 어텐션 맵)를 생성하는 결합부(121: 제 3 모듈)와, 상기 결합부(121: 제 3 모듈)로부터 출력되는 인코딩 정보를 입력 데이터로 하여 상기 입력 이미지 내 실제 텍스트(문자)를 높은 정확도와 속도로 감지하는 트랜스포머 디코더 기반의 문자 인식부(131: 제 4 모듈)를 포함하는 문자인식 딥러닝 뉴럴 네트워크를 제공함으로써, 입력 이미지 내 텍스트(비정형 텍스트(예컨대, 곡선형 텍스트 등)를 포함할 수 있음)에 대한 광학문자인식(OCR)의 성능을 보다 향상시킬 수 있다. In addition, as described above, in the embodiment of the present invention, an encoder for outputting initial encoding information (first attention map) by quickly and accurately extracting characteristics and position information of text in an input image, and initial encoding information output from the encoder From the combiner 121 (third module) that converts and generates encoding information (second attention map) in a form that minimizes artifacts in the initial encoding information, and the combiner 121: third module A character recognition deep learning neural network including a transformer decoder-based character recognition unit 131 (fourth module) that detects real text (characters) in the input image with high accuracy and speed by using the output encoding information as input data By providing, it is possible to further improve the performance of optical character recognition (OCR) for text in the input image (which may include unstructured text (eg, curved text, etc.)).
2)2) 이미지 검출모듈(Image Detection Module; 212)Image Detection Module (212)
본 발명의 실시예에 따른 이미지 검출모듈(212)은, 딥러닝을 기반으로 메뉴판 이미지 내 객체 이미지를 검출할 수 있다. The
여기서, 실시예에 따른 객체 이미지란, 메뉴판 이미지 내 텍스트 이외의 특정 물체의 형상을 나타내는 이미지일 수 있다. Here, the object image according to the embodiment may be an image representing the shape of a specific object other than text in the menu board image.
예를 들면, 이미지 검출모듈(212)은, 메뉴판 이미지 내의 제 1 음식사진, 제 2 음식사진, 제 3 음식사진, …, 제 n 음식사진을 객체 이미지로서 검출할 수 있다. For example, the
실시예에서, 컴퓨팅 장치(200)의 프로세서(260)는, 위와 같은 이미지 검출모듈(212)에 의하여 메뉴판 이미지로부터 검출된 객체 이미지와, 상술된 광학문자인식 모듈(100)에 의하여 메뉴판 이미지로부터 감지된 텍스트를 페어링(pairing)할 수 있다. 이에 대한 자세한 설명은 후술되는 딥러닝 기반의 메뉴판 제공방법에서 기술하기로 한다. In an embodiment, the
실시예에서, 이러한 이미지 검출모듈(212)은, YoLo v4 및/또는 EfficientDet 등과 같은 딥러닝 기반의 이미지 검출기를 기초로 구현될 수 있으며, 본 발명의 실시예에서는 메뉴판 이미지로부터 객체 이미지를 검출하는 알고리즘 자체를 한정하거나 제한하지는 않는다. In an embodiment, such an
<서브 모듈(Sub Module; 220)><Sub Module (220)>
실시예에서 컴퓨팅 장치(200)의 서브 모듈(220)은, 메뉴판 이미지로부터 감지된 텍스트를 이종의 언어로 변환하여 번역하는 문자번역 모듈(221)과, 상기 텍스트에 대응되는 소정의 이미지를 검출하여 제공하는 이미지 추천모듈(222)을 포함할 수 있다. In an embodiment, the
1)One) 문자번역 모듈(Translation Module; 221)Translation Module (221)
본 발명의 실시예에서 문자번역 모듈(221)은, 딥러닝에 기반하여 메뉴판 이미지로부터 감지된 텍스트 정보(실시예에서, 메뉴명 정보, 가격 텍스트 정보 및/또는 사이드 텍스트 정보 등)를 이종의 언어로 변환하여 번역할 수 있다. In an embodiment of the present invention, the
예를 들면, 문자번역 모듈(221)은, 제 1 언어(예컨대, 영어)를 기반으로 만들어진 메뉴판을 촬영한 메뉴판 이미지로부터 감지된 텍스트 정보를 기반으로 딥러닝을 수행할 수 있다. For example, the
그리고 문자번역 모듈(221)은, 수행된 딥러닝에 기반하여 상기 제 1 언어 기반의 텍스트 정보를 이종의 제 2 언어(예컨대, 한국어) 기반의 텍스트 정보로 번역할 수 있다. In addition, the
실시예에서, 위와 같은 문자번역 모듈(221)은, seq2seq 등과 같은 딥러닝 기반의 언어 번역기에 기초하여 구현될 수 있으며, 본 발명의 실시예에서는 메뉴판 이미지 내 텍스트를 번역하는 알고리즘 자체를 한정하거나 제한하지는 않는다. In an embodiment, the
2)2) 이미지 추천모듈(Image Recommendation Module; 222)Image Recommendation Module (222)
본 발명의 실시예에 따른 이미지 추천모듈(222)은, 컴퓨팅 장치(200)의 프로세서(260)가 상술된 이미지 검출모듈(212)에 의하여 메뉴판 이미지로부터 검출된 객체 이미지와, 상술된 광학문자인식 모듈(100)에 의하여 메뉴판 이미지로부터 감지된 텍스트(실시예에서, 메뉴명 정보)를 페어링(pairing)할 시, 상기 메뉴명에 맵핑되는 객체 이미지가 부재하는 경우, 딥러닝을 기반으로 상기 메뉴명에 페어링되도록 추천되는 소정의 객체 이미지(실시예에서, 추천 이미지)를 획득해 제공할 수 있다. The
자세히, 실시예에서 이미지 추천모듈(222)은, 데이터베이스 모듈(230)이 저장 및/또는 관리하는 복수의 객체 이미지 집합과, 맵핑되는 객체 이미지가 부재한 상태의 메뉴명 정보를 입력 데이터로 하는 딥러닝을 수행할 수 있다. In detail, in the embodiment, the
또한, 이미지 추천모듈(222)은, 위와 같이 수행되는 딥러닝에 기초하여 상기 메뉴명에 대응되는 적어도 하나 이상의 객체 이미지를 상기 데이터베이스 모듈(230)로부터 독출할 수 있다. Also, the
그리고 이미지 추천모듈(222)은, 독출된 객체 이미지를 상기 메뉴명에 페어링되도록 추천하는 추천 이미지로서 제공할 수 있다. In addition, the
다른 실시예로, 이미지 추천모듈(222)은, 외부의 컴퓨팅 장치(200)(예컨대, 웹 서버 등)와 연동하여 상기 메뉴명 정보에 기반한 크롤링(crawling)을 수행할 수 있다. In another embodiment, the
또한, 이미지 추천모듈(222)은, 수행된 크롤링의 결과로서 획득되는 적어도 하나 이상의 이미지 집합과, 상기 메뉴명 정보를 입력 데이터로 하여 딥러닝을 수행할 수 있다. In addition, the
그리고 이미지 추천모듈(222)은, 수행된 딥러닝에 기반하여 상기 메뉴명에 대응되는 적어도 하나 이상의 객체 이미지를 획득할 수 있다. In addition, the
또한, 이미지 추천모듈(222)은, 위와 같이 획득된 객체 이미지를 상기 메뉴명에 페어링되도록 추천하는 추천 이미지로서 제공할 수 있다. Also, the
<기타 모듈(Other Modules)><Other Modules>
본 발명의 실시예에서 컴퓨팅 장치(200)는, 기타 모듈로서 데이터베이스 모듈(230), 통신 모듈(240), 메모리(250) 및 프로세서(260)를 포함할 수 있다. In an embodiment of the present invention, the
1)One) 데이터베이스 모듈(Database Module; 230)Database Module (230)
본 발명의 실시예에 따른 데이터베이스 모듈(230)은, 통합 메뉴판 인식 서비스를 구현하기 위한 각종 응용 프로그램, 어플리케이션, 명령어 및/또는 데이터 등을 저장하고 관리할 수 있다. The
실시예에서, 데이터베이스 모듈(230)은, 불특정 다수의 객체 이미지 집합, 메뉴판 이미지, 텍스트 정보, 추천 이미지, 페어링 정보, 번역 텍스트 정보 및/또는 메뉴판 콘텐츠 등을 저장 및 관리할 수 있다. In an embodiment, the
이러한 데이터베이스 모듈(230)은, ROM, RAM, EPROM, 플래시 드라이브, 하드 드라이브 등과 같은 다양한 저장기기일 수 있고, 인터넷(internet)상에서 상기 데이터베이스 모듈(230)의 저장 기능을 수행하는 웹 스토리지(web storage)일 수도 있다. The
또한, 실시예에서 데이터베이스 모듈(230)은, 불특정 다수의 객체 이미지 집합의 적어도 일부를 제공할 수 있는 외부의 데이터베이스(예컨대, 소셜 네트워크 서비스(Social Network Service, SNS)의 데이터베이스 등)와 연동하여 통합 메뉴판 인식 서비스와 관련된 각종 데이터를 제공할 수 있다. In addition, in the embodiment, the
2)2) 통신 모듈(Communication Module; 240)Communication Module (240)
본 발명의 실시예에 따른 통신 모듈(240)은, 통합 메뉴판 인식 서비스를 제공하기 위한 각종 데이터 및/또는 정보 등을 송수신할 수 있다. The
실시예에서, 통신 모듈(240)은, 외부의 컴퓨팅 장치(200)(예컨대, 외부의 컴퓨팅 디바이스 및/또는 웹 서버 등)와 통신하여 통합 메뉴판 인식 서비스와 관련된 데이터를 주고받을 수 있다. In an embodiment, the
이러한 통신 모듈(240)은, 이동통신을 위한 기술표준들 또는 통신방식(예를 들어, GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등)에 따라 구축된 이동 통신망 상에서 기지국, 외부의 단말, 임의의 서버 중 적어도 하나와 무선 신호를 송수신할 수 있다. The
또한, 통신 모듈(240)은, WLAN(Wireless LAN), Wi-Fi(Wireless-Fidelity), Wi-Fi(Wireless Fidelity) Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMAX(World Interoperability for Microwave Access) 등의 무선 통신방식으로도 무선 신호를 송수신할 수 있다. In addition, the
또한, 통신 모듈(240)은, 근거리 무선 통신방식으로 무선 신호를 송수신할 수 있다. 예를 들어, 통신 모듈(240)은, 블루투스(Bluetooth™), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra Wideband), ZigBee, NFC(Near Field Communication), Wi-Fi(Wireless-Fidelity), Wi-Fi Direct, Wireless USB(Wireless Universal Serial Bus) 기술 중 적어도 하나를 이용하여 근거리 통신을 지원할 수 있다. Also, the
3)3) 메모리(Memory; 250)Memory (250)
본 발명의 실시예에 따른 메모리(250)는, 통합 메뉴판 인식 서비스를 제공하기 위한 운영체제(OS), 각종 응용 프로그램, 데이터 및 명령어 중 어느 하나 이상을 저장할 수 있다. The
실시예에서, 메모리(250)는, 상술된 바와 같은 데이터베이스 모듈(230)을 포함하여 구현될 수도 있다. In an embodiment, the
또한, 실시예예서 위와 같은 메모리(250)는, 프로그램 영역과 데이터 영역을 포함할 수 있다. Also, in the embodiment, the
여기서, 실시예에 따른 프로그램 영역은, 컴퓨팅 장치(200)를 부팅하는 운영체제(OS: Operating System) 및 기능요소들 사이에 연계될 수 있으며, 데이터 영역은, 컴퓨팅 장치(200)의 사용에 따라 발생하는 데이터가 저장될 수 있다. Here, the program area according to the embodiment may be linked between an operating system (OS) for booting the
이러한 메모리(250)는, ROM, RAM, EPROM, 플래시 드라이브, 하드 드라이브 등과 같은 다양한 저장기기일 수 있고, 인터넷(internet)상에서 상기 메모리(250)의 저장 기능을 수행하는 웹 스토리지(web storage)일 수도 있다. 또한, 메모리(250)는, 컴퓨팅 장치(200) 상에 탈착 가능한 형태의 기록매체일 수 있다. The
4)4) 프로세서(Processor; 260)Processor (260)
본 발명의 실시예에 따른 프로세서(260)는, 통합 메뉴판 인식 서비스를 구현하기 위하여 전술한 각 유닛(unit)의 전반적인 동작을 컨트롤할 수 있다. The
이러한 프로세서(260)는, 중앙처리장치(CPU) 및/또는 그래픽처리장치(GPU) 등이 포함된 컴퓨팅 장치(200)에 적합한 시스템 온 칩(SOC)일 수 있으며, 메모리(250)에 저장된 운영체제(OS) 및/또는 어플리케이션 프로그램 등을 실행할 수 있고, 컴퓨팅 장치(200)에 탑재된 각 구성요소들을 제어할 수 있다. The
또한, 프로세서(260)는, 각 구성요소와 내부적으로 시스템 버스(System Bus)에 의해 통신을 수행할 수 있고, 로컬 버스(Local Bus)를 비롯한 소정의 버스 구조들을 하나 이상 포함할 수 있다. Also, the
또한, 프로세서(260)는, ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세스(microprocessors), 기타 기능 수행을 위한 전기적 유닛 중 적어도 하나를 이용하여 구현될 수 있다. In addition, the
본 발명의 실시예에서 상술된 바와 같은 구성요소를 포함하는 컴퓨팅 장치(200)는, 적어도 하나 이상의 메인 모듈(210), 서브 모듈(220), 데이터베이스 모듈(230) 및/또는 통신 모듈(240)로 구성될 수 있으며, 데이터 처리를 위한 적어도 하나 이상의 프로세서(260)들과, 통합 메뉴판 인식 서비스 제공을 위한 각종 응용 프로그램, 데이터 및/또는 명령어들을 저장하는 적어도 하나 이상의 메모리(250)들을 포함할 수 있다. In an embodiment of the present invention, the
- 딥러닝 기반의 메뉴판 제공방법 - How to provide a menu board based on deep learning
이하, 소비자의 컴퓨팅 장치(200)에서 실행되는 메뉴판 어플리케이션이 딥러닝을 기반으로 메뉴판을 제공하는 방법을 첨부된 도면을 참조하여 상세히 설명한다. Hereinafter, a method in which the menu board application executed on the consumer's
도 13은 본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공방법을 설명하기 위한 흐름도이다. 13 is a flowchart illustrating a method for providing a menu board based on deep learning according to an embodiment of the present invention.
도 13을 참조하면, 본 발명의 실시예에서 메뉴판 어플리케이션은, 메뉴판 이미지 내 텍스트 정보를 획득할 수 있다. (S101) Referring to FIG. 13 , in an embodiment of the present invention, the menu board application may acquire text information in the menu board image. (S101)
도 14는 본 발명의 실시예에 따른 메뉴판 이미지를 나타내는 모습의 일례이다. 14 is an example of an image of a menu board according to an embodiment of the present invention.
자세히, 도 14를 참조하면, 실시예예서 메뉴판 어플리케이션은, 소정의 언어(예컨대, 영어 등)를 기반으로 제작된 메뉴판을 촬영한 이미지인 메뉴판 이미지를 획득할 수 있다. In detail, referring to FIG. 14 , the menu board application in the embodiment may acquire a menu board image that is an image of a menu board produced based on a predetermined language (eg, English, etc.).
이때, 실시예에서 상기 메뉴판 이미지는, 해당하는 사업점에서 판매하는 메뉴정보(메뉴명, 메뉴가격, 메뉴사진 및/또는 메뉴설명 정보 등) 및/또는 사업점 정보(상호명 정보 등) 등을 포함할 수 있다. In this case, in the embodiment, the menu board image includes menu information (menu name, menu price, menu photo and/or menu description information, etc.) and/or business store information (business name information, etc.) sold by the corresponding business store. can do.
또한, 실시예에서 위와 같은 메뉴판 이미지를 획득한 메뉴판 어플리케이션은, 딥러닝에 기초하여 상기 획득된 메뉴판 이미지 내 텍스트를 감지해 텍스트 정보를 획득할 수 있다. Also, in the embodiment, the menu board application that has obtained the above menu board image may acquire text information by detecting text in the obtained menu board image based on deep learning.
여기서, 실시예에 따른 텍스트 정보는, 메뉴판 이미지를 입력 데이터로 하여 딥러닝을 수행해 감지되는 텍스트를 기반으로 획득되는 정보로서, 적어도 하나 이상의 메뉴명 정보(10), 가격 텍스트 정보(20) 및/또는 사이드 텍스트 정보(30)를 포함할 수 있다. Here, the text information according to the embodiment is information obtained based on text sensed by performing deep learning using a menu board image as input data, and includes at least one or more menu name information 10, price text information 20, and / Alternatively, the side text information 30 may be included.
자세히, 실시예에서 메뉴명 정보(10)는, 메뉴판 이미지 내 텍스트들 중 메뉴명을 표시하는 적어도 하나 이상의 텍스트를 포함할 수 있다. In detail, in the embodiment, the menu name information 10 may include at least one text indicating a menu name among texts in the menu board image.
예를 들면, 메뉴명 정보(10)는, 김치찌개(제 1 메뉴명, 10-1), 된장찌개(제 2 메뉴명, 10-2), 부대찌개(제 3 메뉴명, 10-3), …, 제 n 메뉴명을 포함할 수 있다. For example, the menu name information 10 includes kimchi stew (first menu name, 10-1), soybean paste stew (second menu name, 10-2), budae-jjigae (third menu name, 10-3), ... , the nth menu name may be included.
또한, 실시예에서 가격 텍스트 정보(20)는, 메뉴판 이미지 내 텍스트들 중 메뉴에 대한 가격을 표시하는 적어도 하나 이상의 텍스트를 포함할 수 있다. Also, according to an embodiment, the price text information 20 may include at least one text indicating a price for a menu among texts in the menu board image.
예를 들어, 가격 텍스트 정보(20)는, 7,000(제 1 메뉴가격, 20-1), 7,000(제 2 메뉴가격, 20-2), 8,000(제 3 메뉴가격, 20-3), …, 제 n 메뉴가격을 포함할 수 있다. For example, the price text information 20 is 7,000 (first menu price, 20-1), 7,000 (second menu price, 20-2), 8,000 (third menu price, 20-3), ... , the nth menu price may be included.
이때, 실시예에서 메뉴판 어플리케이션은, 메뉴판 이미지로부터 메뉴명 정보(10)와 가격 텍스트 정보(20)를 획득할 시 해당하는 메뉴명과 가격 텍스트 정보(20)를 상호 매칭하여 감지할 수 있다. In this case, in the embodiment, when the menu board application acquires the menu name information 10 and the price text information 20 from the menu board image, the corresponding menu name and price text information 20 may be matched to each other and detected.
예를 들면, 메뉴판 어플리케이션은, 메뉴명 정보(10)가 감지된 순서 및/또는 좌표값과 대응되는 감지순서 및/또는 좌표값을 가지는 가격 텍스트 정보(20)를 상호 매칭하여 한 쌍으로 감지할 수 있다. For example, the menu board application detects as a pair by matching the price text information 20 having the detection order and/or coordinate values corresponding to the sequence and/or coordinate values in which the menu name information 10 is detected. can
또한, 실시예에서 사이드 텍스트 정보(30)는, 메뉴명 및 가격 텍스트 정보(20) 이외의 텍스트에 기반하여 획득되는 정보로서, 실시예에서 메뉴 부가설명 텍스트 정보 및/또는 상호명 텍스트 정보 등을 포함할 수 있다. In addition, in the embodiment, the side text information 30 is information obtained based on text other than the menu name and price text information 20, and in the embodiment, it may include menu additional description text information and/or business name text information. can
예를 들어, 사이드 텍스트 정보(30)의 부가설명 텍스트 정보는, 메뉴를 설명하는 텍스트 및/또는 원산지 텍스트 등을 포함할 수 있고, 사이드 텍스트 정보(30)의 상호명 텍스트 정보는, 해당 메뉴판을 제공하는 제 1 사업점의 상호명 등을 포함할 수 있다. For example, the additional explanatory text information of the side text information 30 may include text describing a menu and/or an origin text, etc., and the business name text information of the side text information 30 includes a corresponding menu board. It may include the business name of the first business branch provided.
또한, 실시예에서 메뉴판 어플리케이션은, 메뉴판 이미지 내 객체 이미지(40)를 획득할 수 있다. (S103) Also, in an embodiment, the menu board application may acquire the
여기서, 실시예에 따른 객체 이미지(40)란, 메뉴판 이미지 내 텍스트 이외의 특정 오브젝트의 형상을 표시하는 이미지를 의미할 수 있다. Here, the
자세히, 실시예예서 메뉴판 어플리케이션은, 메뉴판 이미지로부터 텍스트 이외의 특정 오브젝트의 형상을 표시하는 이미지인 객체 이미지(40)를 딥러닝에 기초하여 적어도 하나 이상 획득할 수 있다. In detail, in the embodiment, the menu board application may acquire at least one
예를 들면, 메뉴판 어플리케이션은, 메뉴판 이미지에 기반한 딥러닝을 수행하여, 특정 메뉴의 실사 이미지를 나타내는 제 1 음식사진(40-1), 제 2 음식사진(40-2), 제 3 음식사진, …, 제 n 음식사진을 객체 이미지(40)로서 획득할 수 있다. For example, the menu board application performs deep learning based on the menu board image, the first food photo 40-1, the second food photo 40-2, and the third food representing the actual image of a specific menu. Photo, … , it is possible to obtain the nth food picture as an object image (40).
이와 같이, 실시예예서 메뉴판 어플리케이션은, 메뉴판 내 텍스트 뿐만 아니라 해당하는 텍스트에 매칭되는 객체 이미지(40)(실시예에서, 음식사진 등)까지 함께 추출함으로써, 추후 상기 메뉴판을 번역하는 등 재구성하여 제공할 시 메뉴명이나 가격 등의 텍스트 정보는 물론 해당 메뉴를 나타내는 이미지까지 더 포함하여 제공할 수 있고, 이를 통해 텍스트 이외의 타 정보에 대한 손실을 최소화한 형태의 메뉴판을 생성해 제공할 수 있다. In this way, the menu board application in the embodiment translates the menu board later by extracting not only the text in the menu board but also the object image 40 (in the embodiment, food photos, etc.) matching the text. When reorganized and provided, it is possible to provide not only text information such as menu name and price, but also an image representing the menu, and through this, a menu board in a form that minimizes loss of other information other than text can be created and provided. can
또한, 실시예에서 메뉴판 어플리케이션은, 위와 같이 획득된 텍스트 정보와 객체 이미지(40)를 페어링(pairing)할 수 있다. (S105) Also, in an embodiment, the menu board application may pair the text information obtained as above with the
도 15는 본 발명의 실시예에 따른 페어링(pairing)을 수행하는 방법을 설명하기 위한 도면의 일례이다. 15 is an example of a diagram for explaining a method of performing pairing according to an embodiment of the present invention.
자세히, 도 15를 참조하면, 실시예에서 메뉴판 어플리케이션은, 메뉴판 이미지로부터 획득된 텍스트 정보 내 메뉴명 정보(10)와 객체 이미지(40)를 상호 매칭하여 페어링할 수 있다. In detail, referring to FIG. 15 , in the embodiment, the menu board application may pair the menu name information 10 and the
구체적으로, 실시예에서 메뉴판 어플리케이션은, 1) 딥러닝 기반의 페어링을 수행할 수 있다. Specifically, in the embodiment, the menu board application may 1) perform deep learning-based pairing.
자세히, 메뉴판 어플리케이션은, 적어도 하나 이상의 메뉴명 정보(10) 및 객체 이미지(40)를 입력 데이터로 하고, 특정 메뉴명에 대응되는 특정 객체 이미지(40)를 선정하여 상호 매칭해 출력 데이터로 제공하는 맵핑 딥러닝 뉴럴 네트워크를 기반으로 페어링을 수행할 수 있다. In detail, the menu board application uses at least one menu name information 10 and an
보다 상세히, 실시예에서 메뉴판 어플리케이션은, 적어도 하나 이상의 메뉴명 정보(10)와 적어도 하나 이상의 객체 이미지(40)를 상기 맵핑 딥러닝 뉴럴 네트워크에 입력할 수 있다. In more detail, in the embodiment, the menu board application may input at least one or more menu name information 10 and at least one
이때, 상기 맵핑 딥러닝 뉴럴 네트워크는, 입력된 적어도 하나 이상의 메뉴명 각각에 대응되는 객체 이미지(40)를 1:1로 매칭하는 딥러닝을 수행할 수 있다. In this case, the mapping deep learning neural network may perform deep learning by 1:1 matching the
그리고 상기 맵핑 딥러닝 뉴럴 네트워크는, 수행된 딥러닝의 결과로서 적어도 하나 이상의 메뉴명 각각과 객체 이미지(40) 각각을 상호 매칭한 형태의 출력 데이터를 제공할 수 있다. In addition, the mapping deep learning neural network may provide output data in the form of matching each of at least one menu name and each of the
이후, 상기 맵핑 딥러닝 뉴럴 네트워크로부터 위와 같은 출력 데이터를 수신한 메뉴판 어플리케이션은, 수신된 출력 데이터에 기초하여 메뉴명 정보(10) 및 객체 이미지(40) 간 페어링을 수행할 수 있다. Thereafter, the menu board application that has received the above output data from the mapping deep learning neural network may perform pairing between the menu name information 10 and the
예를 들어, 메뉴판 어플리케이션은, 김치찌개(제 1 메뉴명), 된장찌개(제 2 메뉴명) 및 부대찌개(제 3 메뉴명)를 포함하는 메뉴명 정보(10)와, 김치찌개 사진(제 1 음식사진), 된장찌개 사진(제 2 음식사진) 및 부대찌개 사진(제 3 음식사진)을 포함하는 객체 이미지(40)를 맵핑 딥러닝 뉴럴 네트워크에 입력할 수 있다. For example, the menu board application includes menu name information 10 including kimchi stew (first menu name), soybean paste stew (second menu name), and budae stew (third menu name), and a photo of kimchi stew (first food photo). ), an
그리고 메뉴판 어플리케이션은, 상기 맵핑 딥러닝 뉴럴 네트워크로부터 '김치찌개' 메뉴명 정보(10)와 '김치찌개 사진' 객체 이미지(40)를 맵핑하고, '된장찌개' 메뉴명 정보(10)와 '된장찌개 사진' 객체 이미지(40)를 맵핑하고, '부대찌개' 메뉴명 정보(10)와 '부대찌개 사진' 객체 이미지(40)를 맵핑하여 제공되는 출력 데이터를 획득할 수 있다. And the menu board application maps 'kimchi stew' menu name information 10 and 'kimchi stew photo'
그리하여 메뉴판 어플리케이션은, 상기 획득된 출력 데이터를 기초로 메뉴판 이미지 내 적어도 하나 이상의 메뉴명 각각과 대응되는 객체 이미지(40)를 1:1로 매칭하는 페어링을 수행할 수 있다. Accordingly, the menu board application may perform pairing in which the
이와 같이, 실시예에서 메뉴판 어플리케이션은, 딥러닝을 기반으로 메뉴명과 객체 이미지(40) 간 페어링을 수행함으로써, 메뉴판 내 복수의 메뉴명들과 복수의 객체 이미지(40) 간 맵핑을 빠르고 편리하게 수행할 수 있다. As such, in the embodiment, the menu board application performs the pairing between the menu name and the
다른 실시예로, 메뉴판 어플리케이션은, 2) 거리정보 기반의 페어링을 수행할 수 있다. In another embodiment, the menu board application may perform 2) pairing based on distance information.
여기서, 실시예에 따른 거리정보란, 메뉴판 이미지 내에서 메뉴명 정보(10)를 감지한 영역에 대한 제 1 좌표값(예컨대, 메뉴명 텍스트 영역의 중심점 좌표 등)과, 메뉴판 이미지 내에서 객체 이미지(40)를 검출한 영역에 대한 제 2 좌표값(예컨대, 객체 이미지(40) 영역의 중심점 좌표 등) 간의 거리를 나타낼 수 있다. Here, the distance information according to the embodiment includes a first coordinate value (eg, center point coordinates of a menu name text area, etc.) for an area in which the menu name information 10 is sensed in the menu board image, and an object image in the menu board image. The distance between the second coordinate values (eg, coordinates of the center point of the area of the object image 40 ) for the area in which ( 40 ) is detected may be indicated.
자세히, 실시예에서 메뉴판 어플리케이션은, 특정 메뉴명 정보(10)에 대한 제 1 좌표값과, 적어도 하나 이상의 객체 이미지(40) 각각에 대한 복수의 제 2 좌표값 간의 거리정보를 산출할 수 있다. In detail, in the embodiment, the menu board application may calculate distance information between a first coordinate value for the specific menu name information 10 and a plurality of second coordinate values for each of the at least one
또한, 메뉴판 어플리케이션은, 산출된 복수의 거리정보 중 최소값을 가지는 거리정보를 검출할 수 있다. Also, the menu board application may detect distance information having a minimum value among a plurality of calculated distance information.
그리고 메뉴판 어플리케이션은, 검출된 거리정보에 대응되는 제 2 좌표값을 가지는 객체 이미지(40)를 해당 메뉴명 정보(10)와 맵핑할 수 있다. In addition, the menu board application may map the
그리하여 메뉴판 어플리케이션은, 메뉴명 정보(10) 각각과 소정의 객체 이미지(40)를 맵핑하는 페어링을 수행할 수 있다.Thus, the menu board application may perform pairing in which each of the menu name information 10 and a
이와 같이, 실시예에서 메뉴판 어플리케이션은, 메뉴명과 객체 이미지(40) 간의 거리를 기초로 페어링을 수행 가능함으로써, 메뉴판의 구성에 따라서 메뉴명에 정확히 매칭되는 위치에 객체 이미지(40)가 존재하지 않더라도 해당 메뉴명에 대응되는 객체 이미지(40)를 높은 정확도로 결정해 페어링할 수 있다. As such, in the embodiment, the menu board application can perform pairing based on the distance between the menu name and the
도 16은 본 발명의 실시예에 따른 추천 이미지를 제공하고 페어링(pairing)을 수행하는 방법을 설명하기 위한 도면의 일례이다. 16 is an example of a diagram for explaining a method of providing a recommendation image and performing pairing according to an embodiment of the present invention.
이때, 도 16을 참조하면, 실시에예서 메뉴판 어플리케이션은, 텍스트 정보에 맵핑되는 객체 이미지(40)가 부재하는 경우, 해당 텍스트 정보에 페어링될 추천 이미지를 획득할 수 있고, 획득된 추천 이미지에 기초하여 페어링을 수행할 수 있다. At this time, referring to FIG. 16 , in the embodiment, the menu board application may acquire a recommendation image to be paired with the corresponding text information when the
자세히, 일반적으로 메뉴판 이미지(즉, 메뉴판) 내에는, 메뉴명에 대응되어 해당 메뉴의 모습을 나타내는 객체 이미지(40)(예컨대, 음식사진 등)가 상기 메뉴명 별로 모두 존재할 수도 있으나, 상황에 따라서 메뉴판 이미지 내 모든 메뉴명에 대한 객체 이미지(40)가 존재하지 않을 수도 있다. In detail, in general, in the menu board image (ie, menu board), object images 40 (eg, food photos, etc.) corresponding to the menu name and representing the appearance of the menu may all exist for each menu name, but depending on the situation The
예를 들면, 상황에 따라서 메뉴판 이미지는, 복수의 메뉴들 중 해당 사업점의 메인 메뉴에 대한 객체 이미지(40)만을 해당 메뉴판 이미지에 포함하고 있고, 나머지 메뉴들에 대한 객체 이미지(40)는 불포함할 수도 있다. For example, depending on the situation, the menu board image includes only the
위와 같은 상황과 같이, 소정의 메뉴명 정보(10)에 맵핑되는 객체 이미지(40)가 부재하는 경우, 본 발명의 실시예에서 메뉴판 어플리케이션은, 해당 메뉴명 정보(10)에 페어링될 추천 이미지를 제공할 수 있다. As in the above situation, when the
여기서, 실시예에 따른 추천 이미지란, 해당하는 메뉴판 이미지 외부에 존재하는 불특정 다수의 객체 이미지(40)들 중에서, 상기 메뉴명 정보(10)에 대응된다고 판단된 소정의 객체 이미지(40)일 수 있다. Here, the recommended image according to the embodiment may be a
또한, 실시예에서 메뉴판 어플리케이션은, 상기 추천 이미지를 해당하는 메뉴명 정보(10)에 맵핑하여 페어링을 수행할 수 있다. Also, in an embodiment, the menu board application may perform pairing by mapping the recommendation image to the corresponding menu name information 10 .
자세히, 실시예예서 메뉴판 어플리케이션은, 1) 데이터베이스를 기반으로 추천 이미지를 획득하여 페어링을 수행할 수 있다. In detail, in the embodiment, the menu board application may perform pairing by 1) acquiring a recommendation image based on a database.
보다 상세히, 본 발명의 실시예에 따른 데이터베이스 모듈(230)은, 불특정 다수의 객체 이미지(40) 집합 데이터를 포함할 수 있다. In more detail, the
또한, 실시예예서 메뉴판 어플리케이션은, 상술된 바와 같이 대응되는 객체 이미지(40)가 부재하는 메뉴명 정보(10)와, 상기 객체 이미지(40) 집합 데이터를 기초로 하여 상기 객체 이미지(40) 집합 데이터 중 상기 메뉴명 정보(10)에 매칭된다고 판단되는 객체 이미지(40)인 추천 이미지를 검출할 수 있다. In addition, the menu board application in the embodiment, as described above, based on the menu name information 10 in which the
이때, 실시예로 메뉴판 어플리케이션은, 딥러닝 뉴럴 네트워크에 기반하여 상기 메뉴명 정보(10)와 객체 이미지(40) 집합 데이터에 기반한 추천 이미지를 검출할 수 있다. In this case, in an embodiment, the menu board application may detect a recommended image based on the set data of the menu name information 10 and the
구체적으로, 메뉴판 어플리케이션은, 상기 메뉴명 정보(10)와 상기 객체 이미지(40) 집합 데이터를 상술된 맵핑 딥러닝 뉴럴 네트워크에 입력할 수 있다. Specifically, the menu board application may input the menu name information 10 and the
여기서, 상기 맵핑 딥러닝 뉴럴 네트워크는, 입력된 메뉴명 정보(10) 및 집합 데이터에 기초하여 딥러닝을 수행할 수 있고, 그 결과로 상기 메뉴명 정보(10)에 대응되는 객체 이미지(40)를 상기 집합 데이터로부터 추출하여 추천 이미지로 결정할 수 있다. Here, the mapping deep learning neural network may perform deep learning based on the input menu name information 10 and set data, and as a result, the
그리고 상기 맵핑 딥러닝 뉴럴 네트워크는, 결정된 추천 이미지와 상기 메뉴명 정보(10)를 맵핑한 형태의 출력 데이터를 제공할 수 있다. In addition, the mapping deep learning neural network may provide output data in the form of mapping the determined recommendation image and the menu name information 10 .
이후, 상기 맵핑 딥러닝 뉴럴 네트워크로부터 상기 출력 데이터를 수신한 메뉴판 어플리케이션은, 수신된 출력 데이터(즉, 상기 메뉴명 정보(10)와 추천 이미지가 맵핑된 정보)에 기초하여, 대응되는 객체 이미지(40)가 부재하는 메뉴명 정보(10)에 상기 추천 이미지를 페어링할 수 있다. Thereafter, the menu board application receiving the output data from the mapping deep learning neural network, based on the received output data (that is, the information on which the menu name information 10 and the recommended image are mapped), a corresponding object image ( The recommendation image may be paired with the menu name information 10 in which 40) is absent.
그리하여 실시예에서 메뉴판 어플리케이션은, 메뉴판 이미지 내에는 대응되는 객체 이미지(40)가 없는 메뉴명 정보(10)더라도, 해당 메뉴명 정보(10)에 대응되는 객체 이미지(40)를 메뉴판 이미지 외부로부터 획득하여 매칭해 제공할 수 있다. Thus, in the embodiment, the menu board application retrieves the
예를 들면, 메뉴판 어플리케이션은, '부대찌개(즉, 메뉴명)'에 대응되는 객체 이미지(40)가 부재하는 경우, ‘부대찌개’ 텍스트 및 데이터베이스 내 객체 이미지(40) 집합 데이터에 기반한 딥러닝을 수행할 수 있다. For example, the menu board application, when the
그리고 메뉴판 어플리케이션은, 수행된 딥러닝을 통하여 상기 ‘부대찌개’ 텍스트에 대응된다고 판단된 객체 이미지(40)인 추천 이미지를 상기 집합 데이터로부터 추출해 획득할 수 있다. In addition, the menu board application may extract and obtain a recommendation image, which is an
또한, 메뉴판 어플리케이션은, 위와 같이 획득된 추천 이미지를 상기 '부대찌개(즉, 메뉴명)' 텍스트에 맵핑하여 페어링을 수행할 수 있다. In addition, the menu board application may perform pairing by mapping the above-obtained recommendation image to the 'Budaejjigae (ie, menu name)' text.
다른 실시예로, 데이터베이스 모듈(230) 내 불특정 다수의 객체 이미지(40) 집합 데이터 각각은, 각각에 대응되는 태그어를 포함할 수 있다. In another embodiment, each of the set data of the unspecified plurality of
여기서, 본 실시예에 따른 상기 태그어는, 해당하는 객체 이미지(40) 내 오브젝트명(실시예에서, 메뉴명) 등에 기반하여 설정될 수 있다. Here, the tag word according to the present embodiment may be set based on an object name (in the embodiment, a menu name) in the
예를 들어, 객체 이미지(40) 집합 데이터 내 소정의 객체 이미지(40)가 '부대찌개' 오브젝트를 포함하고 있는 경우, 상기 소정의 객체 이미지(40)에 대응되는 태그어는 '부대찌개'로 설정될 수 있다. For example, when a
또한, 본 실시예에서 메뉴명 어플리케이션은, 대응되는 객체 이미지(40)가 부재하는 메뉴명 정보(10)와, 상기 객체 이미지(40) 집합 데이터 각각에 대한 태그어에 기초하여, 상기 메뉴명 정보(10)에 대한 추천 이미지를 상기 객체 이미지(40) 집합 데이터로부터 추출할 수 있다. In addition, in the present embodiment, the menu name application is based on the menu name information 10 in which the
자세히, 본 실시예에서 메뉴명 어플리케이션은, 상기 메뉴명 정보(10)에 대응되는 태그어를 가지는 객체 이미지(40)를 상기 객체 이미지(40) 집합 데이터로부터 추출할 수 있다. In detail, in the present embodiment, the menu name application may extract an
예를 들면, 메뉴명 어플리케이션은, 메뉴명 정보(10)가 '부대찌개' 인 경우, 상기 객체 이미지(40) 집합 데이터 내 복수의 객체 이미지(40)들 중 '부대찌개'를 태그어로 가지는 객체 이미지(40)를 추출할 수 있다. For example, in the menu name application, when the menu name information 10 is 'Budaejjigae', an object image having 'Budaejjigae' among a plurality of
또한, 본 실시예에서 메뉴명 어플리케이션은, 위와 같이 추출된 객체 이미지(40)를 상기 메뉴명 정보(10)에 페어링될 추천 이미지로 결정할 수 있다. Also, in the present embodiment, the menu name application may determine the
그리고 메뉴명 어플리케이션은, 결정된 추천 이미지를 상기 메뉴명 정보(10)에 맵핑하여 페어링을 수행할 수 있다. In addition, the menu name application may perform pairing by mapping the determined recommended image to the menu name information 10 .
예시적으로, 메뉴명 어플리케이션은, '부대찌개(즉, 메뉴명)'에 대응되는 객체 이미지(40)가 부재하는 경우, ‘부대찌개’ 텍스트에 대응되는 태그어를 가지는 객체 이미지(40)를 상기 집합 데이터로부터 추출할 수 있고, 추출된 객체 이미지(40)를 상기 메뉴명 정보(10)에 페어링될 추천 이미지로 결정할 수 있으며, 결정된 추천 이미지를 상기 '부대찌개(즉, 메뉴명)' 텍스트에 맵핑하여 페어링을 수행할 수 있다. Illustratively, the menu name application sets the
이와 같이, 본 발명의 실시예에서 메뉴판 어플리케이션은, 메뉴명에 매칭되는 객체 이미지(40)가 부재하는 경우, 해당 메뉴판 이미지로부터 획득되는 객체 이미지(40) 이외의 불특정 다수의 객체 이미지(40)들 중에서 어느 하나를 선정하여 해당 메뉴명에 맵핑해 제공함으로써, 기존 메뉴판에 모든 메뉴 각각에 대한 사진이 존재하지 않더라도 해당 메뉴를 나타내는 사진을 검출해 함께 제공할 수 있고, 이를 통해 추후 재구성되어 제공되는 메뉴판의 내용을 보다 정확하고 직관적으로 인지하게 함과 동시에 그 사용성 또한 향상시킬 수 있다. As such, in the exemplary embodiment of the present invention, in the menu board application, if there is no
다른 실시예로, 메뉴판 어플리케이션은, 2) 소셜 네트워크 서비스(Social Network Service, SNS)를 기반으로 추천 이미지를 획득하여 페어링을 수행할 수 있다. In another embodiment, the menu board application may perform pairing by acquiring a recommendation image based on 2) a social network service (SNS).
자세히, 본 실시예에 따른 데이터베이스 모듈(230)은, 소정의 소셜 네트워크 서비스(예컨대, 인스타그램 및/또는 페이스북 등)의 서버와 연동할 수 있다. In detail, the
또한, 본 실시예에서 메뉴판 어플리케이션은, 상술된 바와 같이 대응되는 객체 이미지(40)가 부재하는 텍스트 정보의 메뉴명 정보(10) 및/또는 사이드 텍스트 정보(30)에 기초하여, 소셜 네트워크 서비스 기반 검색(크롤링)을 수행할 수 있다. In addition, in the present embodiment, the menu board application is based on the social network service based on the menu name information 10 and/or the side text information 30 of the text information in which the
보다 상세히, 본 실시예에서 메뉴판 어플리케이션은, 대응되는 객체 이미지(40)가 부재하는 메뉴명 정보(10) 및/또는 해당 메뉴명 정보(10)에 대응되는 사이드 텍스트 정보(30) 내 상호명 텍스트 정보에 기반하여, 소셜 네트워크 서비스 기반 검색을 수행할 수 있다. In more detail, in the present embodiment, the menu board application includes the menu name information 10 in which the
예를 들면, 메뉴판 어플리케이션은, '부대찌개' 및 '제 1 사업점의 상호명'을 포함하는 검색어에 기초하여 소셜 네트워크 서비스 기반 검색을 수행할 수 있다. For example, the menu board application may perform a social network service-based search based on a search word including 'budaejjigae' and 'business name of the first business branch'.
또한, 본 실시예에서 메뉴판 어플리케이션은, 위와 같은 검색을 수행하여 상기 메뉴명 정보(10) 및/또는 상호명 텍스트 정보에 매칭되는 객체 이미지(40)를 상기 소셜 네트워크 서비스의 데이터베이스로부터 검출하여 획득할 수 있다. In addition, in the present embodiment, the menu board application may perform the above search to detect and obtain an
이때, 본 실시예에서 메뉴판 어플리케이션은, 상기 메뉴명 정보(10) 및/또는 상호명 텍스트 정보에 매칭되는 객체 이미지(40)가 복수 개 검출되는 경우, 소정의 기준에 따라서 상기 검출된 후보 객체 이미지(40) 중 적어도 하나를 선택할 수 있다. At this time, in the present embodiment, when a plurality of
실시예로, 메뉴판 어플리케이션은, 위와 같이 검출된 복수의 후보 객체 이미지(40)에 기반한 딥러닝을 수행하여, 해당하는 후보 객체 이미지(40) 내 오브젝트 영역을 제외한 배경 영역의 크기가 최소값을 가지는 후보 객체 이미지(40)를 추천 이미지로 선정할 수 있다. In an embodiment, the menu board application performs deep learning based on the plurality of
다른 실시예로, 메뉴판 어플리케이션은, 위와 같이 검출된 복수의 후보 객체 이미지(40) 중 '좋아요' 개수가 최대값을 가지는 후보 객체 이미지(40)를 추천 이미지로 선정할 수도 있다. As another embodiment, the menu board application may select the
또한, 본 실시예에서 메뉴판 어플리케이션은, 위와 같이 선정된 추천 이미지를 상기 메뉴명 정보(10)에 맵핑하여 페어링을 수행할 수 있다. In addition, in the present embodiment, the menu board application may perform pairing by mapping the recommended image selected as above to the menu name information 10 .
이와 같이, 본 실시예에서 메뉴판 어플리케이션은, 소정의 소셜 네트워크 서비스와 연동하여 메뉴명에 페어링될 추천 이미지를 결정 가능함으로써, 대용량의 빅 데이터를 기반으로 최신의 동향까지 고려한 검색을 수행해 추천 이미지를 결정할 수 있고, 이를 통해 추천 이미지와 메뉴명 간의 상호 부합도와 정확도를 보다 향상시킬 수 있다. As described above, in the present embodiment, the menu board application can determine a recommended image to be paired with a menu name in conjunction with a predetermined social network service, so that a recommended image can be determined by performing a search based on a large amount of big data and considering the latest trends. Through this, mutual correspondence and accuracy between the recommended image and the menu name can be further improved.
다시 도 13으로 돌아와서, 또한 실시예에서 메뉴판 어플리케이션은, 상술된 바와 같이 획득된 텍스트 정보에 대한 언어변환을 수행하여 번역 텍스트 정보(50)를 획득할 수 있다. (S107) Returning to FIG. 13 again, in an embodiment, the menu board application may obtain the translated
여기서, 실시예에 따른 번역 텍스트 정보(50)란, 소정의 언어(예컨대, 영어)를 기반으로 제작된 메뉴판 내 텍스트 정보(실시예에서, 메뉴명 정보(10), 가격 텍스트 정보(20) 및/또는 사이드 텍스트 정보(30) 등)를 소정의 타 언어(예컨대, 한국어)로 변환하여 번역한 정보일 수 있다. Here, the translated
자세히, 실시예에서 메뉴판 어플리케이션은, 딥러닝을 기반으로 언어변환 프로세스를 수행하는 문자번역 모듈(221)에 기초하여 상기 번역 텍스트 정보(50)를 획득할 수 있다. In detail, in an embodiment, the menu board application may acquire the translated
이때, 예시적으로 상기 문자번역 모듈(221)은, seq2seq 등과 같은 딥러닝 기반의 언어 번역기에 기초하여 구현될 수 있으며, 본 발명의 실시예에서는 메뉴판 이미지 내 텍스트 정보를 번역하는 알고리즘 자체를 한정하거나 제한하지는 않는다. In this case, for example, the
보다 상세히, 실시예예서 메뉴판 어플리케이션은, 특정 언어(예컨대, 영어)에 기반한 메뉴명 정보(10), 가격 텍스트 정보(20) 및/또는 사이드 텍스트 정보(30)를 상기 문자번역 모듈(221)에 입력할 수 있다. In more detail, the menu board application in the embodiment transmits menu name information 10, price text information 20 and/or side text information 30 based on a specific language (eg, English) to the
이때, 상기 문자번역 모듈(221)은, 입력된 데이터에 기반한 딥러닝을 수행하여 상기 텍스트 정보(즉, 메뉴명 정보(10), 가격 텍스트 정보(20) 및/또는 사이드 텍스트 정보(30))를 소정의 타 언어(예컨대, 한국어)로 변환해 출력 데이터로 제공할 수 있다. At this time, the
그리하면, 실시예에서 메뉴판 어플리케이션은, 상기 문자번역 모듈(221)로부터 제공되는 출력 데이터에 기초하여 상기 메뉴명 정보(10), 가격 텍스트 정보(20) 및/또는 사이드 텍스트 정보(30)에 대한 번역 텍스트 정보(50)를 획득할 수 있다. Then, in the embodiment, the menu board application is based on the output data provided from the
이때, 실시예에서 위와 같이 획득되는 번역 텍스트 정보(50)는, 해당 번역 텍스트 정보(50)에 대응되는 텍스트 정보에 맵핑된 객체 이미지(40)와 동일하게 페어링될 수 있다. In this case, in the embodiment, the translated
이와 같이, 실시예에서 메뉴판 어플리케이션은, 특정 언어로 구현되어 있는 메뉴판을 타 언어로 번역하여 제공 가능함으로써, 소비자가 익숙하지 않은 이종의 언어로 만들어진 메뉴판이더라도 손쉽게 해당 메뉴판의 내용을 확인하고 이용하게 할 수 있다. As such, in the embodiment, the menu board application can provide a menu board implemented in a specific language by translating it into another language, so that even if the menu board is made in a different language that the consumer is not familiar with, the contents of the menu board can be easily checked. and can make use of it.
도 17은 본 발명의 실시예에 따른 메뉴판 콘텐츠를 나타내는 모습의 일례이다. 17 is an example of a state of displaying menu board contents according to an embodiment of the present invention.
또한, 도 17을 참조하면, 실시예에서 메뉴판 어플리케이션은, 위와 같이 획득된 정보들에 기초하여 메뉴판 콘텐츠를 생성해 제공할 수 있다. (S109) Also, referring to FIG. 17 , in an embodiment, the menu board application may generate and provide menu board content based on the information obtained as above. (S109)
즉, 실시예에서 메뉴판 어플리케이션은, 상술된 바와 같이 획득된 텍스트 정보, 번역 텍스트 정보(50) 및/또는 해당 텍스트 정보와 번역 텍스트 정보(50)의 메뉴명 별로 페어링된 객체 이미지(40-1, 40-2, 40-3, …: 40)에 기초하여 메뉴판 콘텐츠 생성해 제공할 수 있다. That is, in the embodiment, the menu board application includes the text information obtained as described above, the translated
여기서, 실시예에 따른 메뉴판 콘텐츠란, 기존의 메뉴판 이미지로부터 획득되는 텍스트 정보, 번역 텍스트 정보(50) 및/또는 해당 텍스트 정보와 번역 텍스트 정보(50)의 메뉴명 별로 페어링된 객체 이미지(40)를 기초로 새롭게 재구성되어 제공되는 메뉴판을 의미할 수 있다. Here, the menu board content according to the embodiment refers to text information obtained from an existing menu board image, translated
실시예로, 메뉴판 어플리케이션은, 메뉴판을 촬영한 메뉴판 이미지로부터 획득된 번역 텍스트 정보(50)와, 해당 번역 텍스트 정보(50)에 페어링된 객체 이미지(40)를 기반으로 재구성되어 새롭게 만들어진 번역 메뉴판을 생성할 수 있다. In an embodiment, the menu board application is newly created by reconstructing based on the translated
그리고 메뉴판 어플리케이션은, 생성된 번역 메뉴판을 메뉴판 콘텐츠로서 소정의 방식(예를 들면, 디스플레이 출력 등)으로 제공할 수 있다. In addition, the menu board application may provide the generated translated menu board as menu board content in a predetermined method (eg, display output, etc.).
실시예에 따라서, 메뉴판 어플리케이션은, 기존의 메뉴판 이미지 상에 해당 메뉴판 이미지로부터 획득된 번역 텍스트 정보(50)와, 해당 번역 텍스트 정보(50)에 페어링된 객체 이미지(40)를 증강현실(AR)로 중첩하여 표시할 수도 있다. According to an embodiment, the menu board application, on the existing menu board image, the translated
이와 같이, 실시예에서 메뉴판 어플리케이션은, 번역된 텍스트 정보(즉, 메뉴명과 가격 텍스트 등을 번역한 정보)와 그에 대응하는 객체 이미지(40)(즉, 해당 메뉴명에 대응하는 음식사진 등) 등을 조합하여 새롭게 생성된 메뉴판을 제공함으로써, 기존 메뉴판을 사용자가 원하는 형태(실시예에서, 소비자가 원하는 언어로 번역된 형태 등)로 재구성해 제공할 수 있다. As such, in the embodiment, the menu board application includes translated text information (that is, information translated from menu name and price text) and an
이상, 본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템은, 딥러닝을 기반으로 메뉴판 내 텍스트와 이미지를 추출하고, 추출된 텍스트와 이미지를 상호 매칭하여 재구성된 메뉴판을 제공함으로써, 기존의 메뉴판을 사용자의 요구사항에 따른 형태로 생성해 제공할 수 있는 효과가 있다. As described above, the method and system for providing a menu board based on deep learning according to an embodiment of the present invention extract the text and image in the menu board based on deep learning, and match the extracted text and image to the menu board reconstructed By providing this, there is an effect that the existing menu board can be created and provided in a form according to the user's requirements.
또한, 본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템은, 메뉴판으로부터 추출된 텍스트와 이미지에 기반한 딥러닝을 수행하여 상호 매칭되는 텍스트와 이미지를 페어링(pairing)해 제공함으로써, 추후 상기 메뉴판을 번역하는 등 재구성하여 제공할 시 메뉴명이나 가격 등의 텍스트 정보는 물론 해당 메뉴를 나타내는 이미지까지 더 포함하여 제공할 수 있고, 이를 통해 텍스트 이외의 타 정보에 대한 손실 최소화할 수 있는 효과가 있다. In addition, the method and system for providing a menu board based on deep learning according to an embodiment of the present invention perform deep learning based on text and images extracted from the menu board, and provide matching text and image by pairing By doing so, when reconfiguring and providing the menu board in the future, such as translating, it is possible to provide not only text information such as the menu name or price, but also an image representing the menu, thereby minimizing the loss of other information other than text. can have an effect.
또한, 본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템은, 텍스트와 이미지에 대한 페어링을 수행할 시 상기 텍스트에 대응되는 이미지가 부재하는 경우, 딥러닝을 기초로 상기 텍스트에 대응되는 소정의 이미지를 획득하여 상기 페어링을 수행함으로써, 기존 메뉴판에 모든 메뉴 각각에 대한 이미지가 존재하지 않더라도 해당 메뉴를 나타내는 이미지를 검출해 함께 제공할 수 있고, 이를 통해 재구성되어 제공되는 메뉴판의 내용을 보다 정확하고 직관적으로 인지하게 함과 동시에 그 사용성 또한 향상시킬 수 있는 효과가 있다. In addition, in the deep learning-based menu board providing method and system according to an embodiment of the present invention, when an image corresponding to the text is absent when pairing text with an image, the text is based on deep learning By acquiring a predetermined image corresponding to , and performing the pairing, an image representing the corresponding menu can be detected and provided together even if an image for each menu does not exist in the existing menu board, and the reconfigured menu is provided. It has the effect of making the contents of the plate more accurate and intuitive, and at the same time improving its usability.
또한, 본 발명의 실시예에 따른 딥러닝 기반의 메뉴판 제공 방법 및 그 시스템은, 메뉴판으로부터 추출되는 특정 언어 기반의 텍스트를 딥러닝을 기초로 변환하여 소정의 타 언어로 번역해 제공함으로써, 익숙하지 않은 이종의 언어로 만들어진 메뉴판이더라도 손쉽게 해당 메뉴판의 내용을 확인하고 이용하게 할 수 있는 효과가 있다. In addition, the method and system for providing a menu board based on deep learning according to an embodiment of the present invention convert a specific language-based text extracted from the menu board based on deep learning and translate it into another language and provide it, Even if it is a menu board made in an unfamiliar language, it has the effect of making it easy to check and use the contents of the menu board.
또한, 이상에서 설명된 본 발명에 따른 실시예는 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리(250) 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위하여 하나 이상의 소프트웨어 모듈로 변경될 수 있으며, 그 역도 마찬가지이다.In addition, the embodiments according to the present invention described above may be implemented in the form of program instructions that can be executed through various computer components and recorded in a computer-readable recording medium. The computer-readable recording medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the computer-readable recording medium may be specially designed and configured for the present invention or may be known and used by those skilled in the computer software field. Examples of the computer-readable recording medium include hard disks, magnetic media such as floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and magneto-optical media such as floppy disks. medium), and hardware devices specially configured to store and execute program instructions, such as ROM, RAM,
본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.The specific implementations described in the present invention are only examples, and do not limit the scope of the present invention in any way. For brevity of the specification, descriptions of conventional electronic components, control systems, software, and other functional aspects of the systems may be omitted. In addition, the connection or connection members of lines between the components shown in the drawings illustratively represent functional connections and/or physical or circuit connections, and in an actual device, various functional connections, physical connections that are replaceable or additional may be referred to as connections, or circuit connections. In addition, unless there is a specific reference such as “essential” or “importantly”, it may not be a necessary component for the application of the present invention.
또한 설명한 본 발명의 상세한 설명에서는 본 발명의 바람직한 실시 예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자 또는 해당 기술분야에 통상의 지식을 갖는 자라면 후술할 특허청구범위에 기재된 본 발명의 사상 및 기술 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명의 기술적 범위는 명세서의 상세한 설명에 기재된 내용으로 한정되는 것이 아니라 특허청구범위에 의해 정하여져야만 할 것이다.In addition, although the detailed description of the present invention has been described with reference to a preferred embodiment of the present invention, those skilled in the art or those having ordinary knowledge in the art will have the spirit of the present invention described in the claims to be described later. And it will be understood that various modifications and variations of the present invention can be made without departing from the technical scope. Accordingly, the technical scope of the present invention should not be limited to the contents described in the detailed description of the specification, but should be defined by the claims.
Claims (10)
적어도 하나 이상의 메모리; 를 포함하고,
상기 메모리에 저장되고 상기 적어도 하나 이상의 프로세서에 의해 실행되어 딥러닝 기반의 메뉴판을 제공하는 적어도 하나의 어플리케이션으로서 상기 적어도 하나의 어플리케이션은,
메뉴판 이미지 내 텍스트 정보를 획득하고,
상기 메뉴판 이미지 내 텍스트 이외의 특정 오브젝트를 나타내는 객체 이미지를 획득하고,
상기 획득된 텍스트 정보와 상기 객체 이미지를 맵핑하여 페어링(pairing)하고,
상기 텍스트 정보에 대한 언어변환을 수행하여 번역 텍스트 정보를 획득하고,
상기 텍스트 정보, 상기 번역 텍스트 정보 및 상기 페어링된 객체 이미지 중 적어도 둘 이상에 기초하여 재구성된 메뉴판 콘텐츠를 제공하는
딥러닝 기반의 메뉴판 제공 시스템.at least one processor; and
at least one memory; including,
At least one application stored in the memory and executed by the at least one processor to provide a deep learning-based menu board, the at least one application comprising:
Obtain text information in the menu image,
Obtaining an object image representing a specific object other than text in the menu board image,
Pairing by mapping the obtained text information and the object image,
To obtain translated text information by performing language conversion on the text information,
providing menu board contents reconstructed based on at least two or more of the text information, the translated text information, and the paired object image
A system for providing menus based on deep learning.
상기 텍스트 정보는,
상기 메뉴판 이미지 내 텍스트 중 메뉴명을 나타내는 메뉴명 정보와, 상기 메뉴판 이미지 내 텍스트 중 메뉴의 가격을 나타내는 가격 텍스트 정보와, 상기 메뉴판 이미지 내 텍스트 중 상기 메뉴명 정보와 상기 가격 텍스트 정보 이외의 텍스트를 나타내는 사이드 텍스트 정보 중 적어도 하나 이상을 포함하고,
상기 사이드 텍스트 정보는,
상기 메뉴에 대한 설명을 나타내는 메뉴 부가설명 텍스트 정보 및 상기 메뉴판을 제공하는 사업점명을 나타내는 상호명 텍스트 정보 중 적어도 하나 이상을 포함하는
딥러닝 기반의 메뉴판 제공 시스템.The method of claim 1,
The text information is
menu name information indicating the menu name among the texts in the menu image, price text information indicating the price of the menu among the texts in the menu image, and texts other than the menu name information and the price text information in the text in the menu image At least one of the side text information indicating
The side text information is
Comprising at least one or more of menu additional description text information indicating a description of the menu and business name text information indicating the name of a business store providing the menu board
A system for providing menus based on deep learning.
상기 어플리케이션은,
상기 텍스트 정보에 맵핑되는 객체 이미지가 부재하는 경우, 상기 텍스트 정보에 매칭되는 추천 이미지를 검출하여 상기 텍스트 정보와의 페어링을 수행하는
딥러닝 기반의 메뉴판 제공 시스템.3. The method of claim 2,
The application is
When there is no object image mapped to the text information, detecting a recommendation image matching the text information and performing pairing with the text information
A system for providing menus based on deep learning.
상기 추천 이미지는,
상기 메모리 내 복수의 객체 이미지 데이터 중에서 상기 메뉴명 정보에 매칭되는 객체 이미지인
딥러닝 기반의 메뉴판 제공 시스템.4. The method of claim 3,
The recommended image is,
an object image matching the menu name information among a plurality of object image data in the memory.
A system for providing menus based on deep learning.
상기 어플리케이션은,
상기 메모리 내 데이터베이스 모듈에 저장된 상기 복수의 객체 이미지 데이터와, 상기 메뉴명 정보를 입력으로 하는 딥러닝을 수행하여 상기 추천 이미지를 검출하거나,
상기 복수의 객체 이미지 데이터 각각에 매칭된 태그어와, 상기 메뉴명 정보를 기반으로 상기 추천 이미지를 검출하는
딥러닝 기반의 메뉴판 제공 시스템.5. The method of claim 4,
The application is
Detecting the recommended image by performing deep learning with the plurality of object image data stored in the database module in the memory and the menu name information as inputs;
Detecting the recommended image based on a tag word matched to each of the plurality of object image data and the menu name information
A system for providing menus based on deep learning.
상기 어플리케이션은,
상기 메모리와 연동되는 소셜 네트워크 서비스(Social Network Service, SNS) 상에서 상기 메뉴명 정보 및 상기 사이드 텍스트 정보 중 적어도 하나에 기초한 검색을 수행하여 상기 추천 이미지를 검출하는
딥러닝 기반의 메뉴판 제공 시스템.5. The method of claim 4,
The application is
Detecting the recommended image by performing a search based on at least one of the menu name information and the side text information on a social network service (SNS) linked to the memory
A system for providing menus based on deep learning.
상기 어플리케이션은,
상기 텍스트 정보를 사용자 입력에 따른 타겟 언어를 기반으로 변환하여 상기 번역 텍스트 정보를 획득하는
딥러닝 기반의 메뉴판 제공 시스템.The method of claim 1,
The application is
Converting the text information based on a target language according to a user input to obtain the translated text information
A system for providing menus based on deep learning.
상기 어플리케이션은,
딥러닝 뉴럴 네트워크를 기반으로 상기 메뉴판 이미지 내 텍스트에 대한 특징정보를 추출하는 제 1 모듈과,
상기 추출된 특징정보를 기초로 상기 텍스트에 대한 위치정보를 가지는 초기 인코딩 정보를 생성하는 제 2 모듈과,
상기 생성된 초기 인코딩 정보에 기반한 형태 변환을 수행하여 상기 입력 이미지에 대한 2차원 정보를 유지한 어텐션 맵을 획득하는 제 3 모듈과,
상기 획득된 어텐션 맵에 기초한 딥러닝 모델을 통해 상기 메뉴판 이미지 내 텍스트를 감지하는 제 4 모듈에 기반하여 상기 메뉴판 이미지 내 텍스트 정보를 획득하는
딥러닝 기반의 메뉴판 제공 시스템.The method of claim 1,
The application is
A first module for extracting feature information about the text in the menu board image based on a deep learning neural network;
a second module for generating initial encoding information having location information on the text based on the extracted feature information;
a third module for obtaining an attention map maintaining two-dimensional information on the input image by performing a shape transformation based on the generated initial encoding information;
Obtaining text information in the menu board image based on a fourth module for detecting text in the menu board image through a deep learning model based on the obtained attention map
A system for providing menus based on deep learning.
메뉴판 이미지 내 텍스트 정보를 획득하는 단계;
상기 메뉴판 이미지 내 텍스트 이외의 특정 오브젝트를 나타내는 객체 이미지를 획득하는 단계;
상기 획득된 텍스트 정보와 상기 객체 이미지를 맵핑하여 페어링(pairing)하는 단계;
상기 텍스트 정보에 대한 언어변환을 수행하여 번역 텍스트 정보를 획득하는 단계; 및
상기 텍스트 정보, 상기 번역 텍스트 정보 및 상기 페어링된 객체 이미지 중 적어도 둘 이상에 기초하여 재구성된 메뉴판 콘텐츠를 제공하는 단계를 포함하는
딥러닝 기반의 메뉴판 제공 방법.As a method for providing a menu board based on deep learning by an application running on a computing device,
obtaining text information in the menu board image;
obtaining an object image representing a specific object other than text in the menu image;
mapping the obtained text information and the object image to pairing;
obtaining translated text information by performing language conversion on the text information; and
providing menu board contents reconstructed based on at least two or more of the text information, the translated text information, and the paired object image
How to provide a menu board based on deep learning.
상기 어플리케이션은,
상기 텍스트 정보에 맵핑되는 객체 이미지가 부재하는 경우, 상기 텍스트 정보에 매칭되는 추천 이미지를 검출하여 상기 텍스트 정보와의 페어링을 수행하는
딥러닝 기반의 메뉴판 제공 방법.10. The method of claim 9,
The application is
When there is no object image mapped to the text information, detecting a recommendation image matching the text information and performing pairing with the text information
How to provide a menu board based on deep learning.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200173249A KR102548826B1 (en) | 2020-12-11 | 2020-12-11 | Method and system for providing deep learning-based menu |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200173249A KR102548826B1 (en) | 2020-12-11 | 2020-12-11 | Method and system for providing deep learning-based menu |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220083223A true KR20220083223A (en) | 2022-06-20 |
KR102548826B1 KR102548826B1 (en) | 2023-06-28 |
Family
ID=82257748
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200173249A KR102548826B1 (en) | 2020-12-11 | 2020-12-11 | Method and system for providing deep learning-based menu |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102548826B1 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015176165A (en) * | 2014-03-13 | 2015-10-05 | 株式会社ゼンリンデータコム | Cuisine price search device |
KR101985403B1 (en) * | 2018-11-20 | 2019-06-03 | 주식회사 씨알랩 | Device for providing multilingualism information using image, method and computer readable medium for performing the method |
KR20200064574A (en) * | 2018-11-29 | 2020-06-08 | 이제환 | System for providing food information, method for providing food information and food order information |
KR102142238B1 (en) | 2020-02-25 | 2020-08-07 | 주식회사 엔디소프트 | Method of extracting text information such as abbreviation, handwriting, atypical word and sentence included in a predetermined image and automatically translating the extraction result into a predetermined language |
KR20200100027A (en) * | 2018-08-31 | 2020-08-25 | 엔에이치엔 주식회사 | Method and device for text-based image retrieval |
KR20200106110A (en) * | 2019-02-25 | 2020-09-11 | 네이버 주식회사 | Apparatus and method for recognizing character |
-
2020
- 2020-12-11 KR KR1020200173249A patent/KR102548826B1/en active IP Right Grant
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015176165A (en) * | 2014-03-13 | 2015-10-05 | 株式会社ゼンリンデータコム | Cuisine price search device |
KR20200100027A (en) * | 2018-08-31 | 2020-08-25 | 엔에이치엔 주식회사 | Method and device for text-based image retrieval |
KR101985403B1 (en) * | 2018-11-20 | 2019-06-03 | 주식회사 씨알랩 | Device for providing multilingualism information using image, method and computer readable medium for performing the method |
KR20200064574A (en) * | 2018-11-29 | 2020-06-08 | 이제환 | System for providing food information, method for providing food information and food order information |
KR20200106110A (en) * | 2019-02-25 | 2020-09-11 | 네이버 주식회사 | Apparatus and method for recognizing character |
KR102142238B1 (en) | 2020-02-25 | 2020-08-07 | 주식회사 엔디소프트 | Method of extracting text information such as abbreviation, handwriting, atypical word and sentence included in a predetermined image and automatically translating the extraction result into a predetermined language |
Also Published As
Publication number | Publication date |
---|---|
KR102548826B1 (en) | 2023-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240054687A1 (en) | Encoding and decoding a stylized custom graphic | |
AU2016259336B2 (en) | Embedding space for images with multiple text labels | |
US10789473B2 (en) | Method and device for providing augmented reality service | |
CN105739981B (en) | Code completion implementation method and device and computing equipment | |
CN106415605B (en) | Technology for distributed optical character identification and distributed machines language translation | |
US20160358030A1 (en) | Server-assisted object recognition and tracking for mobile devices | |
US11386625B2 (en) | 3D graphic interaction based on scan | |
CN106462572A (en) | Techniques for distributed optical character recognition and distributed machine language translation | |
WO2020248866A1 (en) | Method and system for image search and cropping | |
KR102124466B1 (en) | Apparatus and method for generating conti for webtoon | |
US11823456B2 (en) | Video matching with a messaging application | |
US11341728B2 (en) | Online transaction based on currency scan | |
EP3825920A1 (en) | Positional embeddings for document processing | |
CN116415594A (en) | Question-answer pair generation method and electronic equipment | |
CN113901954A (en) | Document layout identification method and device, electronic equipment and storage medium | |
WO2024088291A1 (en) | Form filling method and apparatus, electronic device, and medium | |
KR101616671B1 (en) | Method, system and recording medium for distributing of internet cartoon contents | |
US20140044377A1 (en) | Shot image processing system, shot image processing method, mobile terminal, and information processing apparatus | |
WO2016152962A1 (en) | Computer program, information search system, and control method therefor | |
KR101388965B1 (en) | Method for transforming drawing from digital picture | |
US11514648B2 (en) | Aligning input image data with model input data to generate image annotations | |
KR102548826B1 (en) | Method and system for providing deep learning-based menu | |
WO2019052143A1 (en) | Jsx file generation method and apparatus, storage medium and computer device | |
Deniz et al. | A vision-based localization algorithm for an indoor navigation app | |
Zhang et al. | TapTell: Interactive visual search for mobile task recommendation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
E701 | Decision to grant or registration of patent right |