KR20220034083A - 글꼴 데이터베이스의 생성 방법, 신경망 모델의 훈련 방법 및 장치, 전자 기기, 저장 매체, 컴퓨터 프로그램 - Google Patents

글꼴 데이터베이스의 생성 방법, 신경망 모델의 훈련 방법 및 장치, 전자 기기, 저장 매체, 컴퓨터 프로그램 Download PDF

Info

Publication number
KR20220034083A
KR20220034083A KR1020220026390A KR20220026390A KR20220034083A KR 20220034083 A KR20220034083 A KR 20220034083A KR 1020220026390 A KR1020220026390 A KR 1020220026390A KR 20220026390 A KR20220026390 A KR 20220026390A KR 20220034083 A KR20220034083 A KR 20220034083A
Authority
KR
South Korea
Prior art keywords
font
basic
database
model
font database
Prior art date
Application number
KR1020220026390A
Other languages
English (en)
Inventor
리청 탕
지아밍 리우
Original Assignee
베이징 바이두 넷컴 사이언스 테크놀로지 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 베이징 바이두 넷컴 사이언스 테크놀로지 컴퍼니 리미티드 filed Critical 베이징 바이두 넷컴 사이언스 테크놀로지 컴퍼니 리미티드
Publication of KR20220034083A publication Critical patent/KR20220034083A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/19007Matching; Proximity measures
    • G06V30/19093Proximity measures, i.e. similarity or distance measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0454
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • G06V10/7747Organisation of the process, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/1914Determining representative reference patterns, e.g. averaging or distorting patterns; Generating dictionaries, e.g. user dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19147Obtaining sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/22Character recognition characterised by the type of writing
    • G06V30/226Character recognition characterised by the type of writing of cursive writing
    • G06V30/2268Character recognition characterised by the type of writing of cursive writing using stroke segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/24Character recognition characterised by the processing or recognition method
    • G06V30/242Division of the character sequences into groups prior to recognition; Selection of dictionaries
    • G06V30/244Division of the character sequences into groups prior to recognition; Selection of dictionaries using graphical properties, e.g. alphabet type or font
    • G06V30/245Font recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/24Character recognition characterised by the processing or recognition method
    • G06V30/242Division of the character sequences into groups prior to recognition; Selection of dictionaries
    • G06V30/244Division of the character sequences into groups prior to recognition; Selection of dictionaries using graphical properties, e.g. alphabet type or font
    • G06V30/2455Discrimination between machine-print, hand-print and cursive writing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computational Linguistics (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Character Discrimination (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

본 개시는 글꼴 데이터베이스를 생성하기 위한 방법, 신경망 모델의 훈련 방법 및 장치를 개시하였으며, 인공 지능 분야에 관하 것이고, 구체적으로 컴퓨터 비전 및 딥 러닝 기술에 관하 것이다. 상기 글꼴 데이터베이스를 생성하기 위한 방법은 훈련된 유사도 비교 모델을 이용하여, 복수의 기초 글꼴 데이터베이스 중, 대상 사용자의 필기 글꼴 데이터와 가장 유사한 기초 글꼴 데이터베이스를 후보 글꼴 데이터베이스로 결정하는 것; 및 상기 후보 글꼴 데이터베이스를 생성하기 위한 훈련된 기초 글꼴 데이터베이스 모델을 이용하여, 상기 대상 사용자의 필기 글꼴 데이터를 조정하여, 상기 대상 사용자에 대한 대상 글꼴 데이터베이스를 얻는 것을 포함한다.

Description

글꼴 데이터베이스의 생성 방법, 신경망 모델의 훈련 방법 및 장치, 전자 기기, 저장 매체, 컴퓨터 프로그램{METHOD AND APPARATUS OF GENERATING FONT DATABASE, AND METHOD AND APPARATUS OF TRAINING NEURAL NETWORK MODEL, ELECTRONIC DEVICE, RECORDING MEDIUM AND COMPUTER PROGRAM}
본 개시는 인공 지능 분야, 구체적으로 컴퓨터 비전 및 딥 러닝 기술에 관하 것이며, 특히 글꼴 데이터베이스의 생성 방법, 신경망 모델의 훈련 방법 및 장치에 관한 것이다.
여태까지 글꼴 생성은 중국 국내외의 많은 연구자들이 중점적으로 연구하는 과제이고, 글꼴 설계 업계에서 광범위한 응용 가치를 가지고 있다. 현재 주류의 기술 방안은 딥 러닝 기반 글꼴 생성 방안과 글꼴을 분할하여 다시 조합하는 글꼴 생성 방안을 보함한다.
딥 러닝 기반의 글꼴 생성 방안, 특히 생성식 대항망(GAN) 기반의 글꼴 생성 방안의 경우, 훈련을 위해 대량의 데이터가 필요하다. 데이터의 질과 수량은 최종 출력 효과에 큰 영향을 미치기 때문에, 훈련 데이터의 획득과 데이터 질에 대한 요구가 높다. 한편, 글꼴을 분할하여 다시 조합하는 글꼴 생성 방안의 경우, GAN에 비해 필요한 데이터의 수량은 적지만, 사용자의 글꼴의 연속 획 특징을 재현하기 어려움으로 인해, 사용자의 글꼴의 미관도와 다양성이 부족하다.
본 개시는 글꼴 데이터베이스를 생성하기 위한 방법, 신경망 모델의 훈련 방법, 장치, 기기 및 저장 매체를 제공한다.
제1 측면에 의하면,
훈련된 유사도 비교 모델을 이용하여, 복수의 기초 글꼴 데이터베이스 중, 대상 사용자의 필기 글꼴 데이터와 가장 유사한 기초 글꼴 데이터베이스를 후보 글꼴 데이터베이스로 결정하는 것; 및
상기 후보 글꼴 데이터베이스를 생성하기 위한 훈련된 기초 글꼴 데이터베이스 모델을 이용하여, 상기 대상 사용자의 필기 글꼴 데이터를 조정하여, 상기 대상 사용자에 대한 대상 글꼴 데이터베이스를 얻는 것을 포함하는 글꼴 데이터베이스를 생성하기 위한 방법을 제공한다.
제2 측면에 의하면, 기초 글꼴 데이터베이스 모델 및 유사도 비교 모델을 포함하는 신경망 모델의 훈련 방법을 제공하며, 상기 방법은,
복수의 사용자의 필기 글꼴 데이터를 이용하여 상기 기초 글꼴 데이터베이스 모델을 훈련하여, 상기 복수의 사용자 중의 각 사용자가 각각에 대응하는 기초 글꼴 데이터베이스 모델 및 기초 글꼴 데이터베이스를 갖도록 하는 것; 및
상기 복수의 사용자의 복수의 기초 글꼴 데이터베이스를 이용하여 유사도 비교 모델을 훈련하는 것을 포함한다.
제3 측면에 의하면,
훈련된 유사도 비교 모델을 이용하여, 대상 사용자의 필기 글꼴 데이터를 복수의 기초 글꼴 데이터베이스와 각각 비교하여, 상기 복수의 기초 글꼴 데이터베이스 중, 대상 사용자의 필기 글꼴 데이터와 가장 유사한 기초 글꼴 데이터베이스를 후보 글꼴 데이터베이스로 결정하는 결정 모듈; 및
상기 후보 글꼴 데이터베이스를 생성하기 위한 훈련된 기초 글꼴 데이터베이스 모델을 이용하여, 상기 대상 사용자의 필기 글꼴 데이터를 조정하여, 상기 대상 사용자에 대한 대상 글꼴 데이터베이스를 얻는 조정 모듈을 포함하는 글꼴 데이터베이스를 생성하기 위한 장치을 제공한다.
제4 측면에 의하면, 기초 글꼴 데이터베이스 모델 및 유사도 비교 모델을 포함하는 신경망 모델의 훈련 장치을 제공하며, 상기 장치는,
복수의 사용자의 필기 글꼴 데이터를 이용하여 상기 기초 글꼴 데이터베이스 모델을 훈련하여, 상기 복수의 사용자 중의 각 사용자가 각각에 대응하는 기초 글꼴 데이터베이스 모델 및 기초 글꼴 데이터베이스를 갖도록 하는 기초 글꼴 데이터베이스 모델 훈련 모듈; 및
상기 복수의 사용자의 복수의 기초 글꼴 데이터베이스를 이용하여 유사도 비교 모델을 훈련하는 유사도 비교 모델 훈련 모듈을 포함한다.
제5 측면에 의하면,
적어도 하나의 프로세서; 및
상기 적어도 하나의 프로세서와 통신 연결된 메모리를 포함하고,
상기 메모리에는 상기 적어도 하나의 프로세서에 의해 실행 가능한 명령어가 저장되어 있으며, 상기 명령어는 상기 적어도 하나의 프로세서에 의해 실행되어 상기 적어도 하나의 프로세서로 하여금 상기 방법을 실행할 수 있게 하는 전자 기기를 제공한다.
제6 측면에 의하면, 컴퓨터로 하여금 상기 방법을 실행하게 하기 위한 컴퓨터 명령어가 저장되어 있는 비휘발성 컴퓨터 판독 가능 저장 매체를 제공한다.
제7 측면에 의하면, 프로세서에 의해 실행될 때 상기 방법을 구현하는 컴퓨터 프로그램을 포함하는 컴퓨터 프로그램 제품을 제공한다.
이 부분에서 설명한 내용은 본 개시의 실시예의 핵심 또는 중요한 특징을 지정하기 위한 것이 아니고, 또한 본 개시의 범위을 제한하기 위한 것이 아님을 이해해야 한다. 본 개시의 다른 특징들은 하기 설명으로부터 쉽게 이해할 수 있을 것이다.
첨부된 도면은 본 해결 수단을 더 잘 이해하기 위한 것이며, 본 개시에 대해 한정하지 않는다. 여기서,
도 1은 본 개시의 실시예에 따른 글꼴 데이터베이스를 생성하기 위한 방법의 흐름도를 나타내며;
도 2는 본 개시의 실시예에 따른 코히런트 포인트 드리프트(CPD, Coherent Point Set Drift)매칭 알고리즘을 사용하여 사용자의 필기 글씨를 분할한 효과를 나타내며;
도 3은 본 개시의 다른 실시예에 따른 글꼴 데이터베이스를 생성하기 위한 방법의 흐름도를 나타내며;
도 4는 본 개시의 실시예에 따른 편방 이미지 데이터의 중심 위치를 조정하는 설명도를 나타내며;
도 5는 본 개시의 실시예에 따른 신경망 모델의 훈련 방법의 흐름도를 나타내며;
도 6은 본 개시의 실시예에 따른 기초 글꼴 데이터베이스 모델의 모델 구조의 설명도를 나타내며;
도 7은 본 개시의 실시예에 따른 유사도 비교 모델를 훈련하는 방법의 흐름도를 나타내며;
도 8은 본 개시의 실시예에 따른 유사도 비교 모델의 모델 구조의 설명도를 나타내며;
도 9는 본 개시의 실시예에 따른 글꼴 데이터베이스 생성의 효과의 설명도를 나타내며;
도 10은 본 개시의 실시예에 따른 글꼴 데이터베이스를 생성하기 위한 장치의 블록도이며;
도 11은 본 개시의 실시예에 따른 신경망 모델의 훈련 장치의 블록도; 및
도 12는 본 개시의 실시예의 전자 기기를 실시하는 데 사용될 수 있는 블록도를 나타낸다.
이하, 첨부된 도면과 결합하여 본 개시의 시범적인 실시예에 대해 설명하고, 쉽게 이해할 수 있도록 여기에 본 개시의 실시예의 다양한 세부 사항을 포함하며, 이들을 단지 시범적인 것으로 간주해야 한다. 따라서 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 개시의 범위 및 사상을 어기지 않으면서 여기에서 설명한 실시예에 대해 다양한 변경 및 수정을 할 수 있음을 알아야 한다. 마찬가지로, 명확성과 간결성을 위해 이하의 설명에서는 공지된 기능 및 구조에 대한 설명을 생략한다.
도 1은 본 개시의 실시예에 따른 글꼴 데이터베이스를 생성하기 위한 방법(100)의 흐름도를 나타낸다.
단계 S110에서, 훈련된 유사도 비교 모델을 이용하여, 복수의 기초 글꼴 데이터베이스 중, 대상 사용자의 필기 글꼴 데이터와 가장 유사한 기초 글꼴 데이터베이스를 후보 글꼴 데이터베이스로 결정한다.
일부 실시예에서, 대상 사용자의 필기 글꼴 데이터와 복수의 기초 글꼴 데이터베이스 중의 각 기초 글꼴 데이터베이스에 있는 상응하는 글꼴 데이터 사이의 유사도를 결정하며, 복수의 기초 글꼴 데이터베이스 중의 최대 유사도를 가진 기초 글꼴 데이터베이스를 후보 글꼴 데이터베이스로 할 수 있다.
일부 실시예에서, 유사도는 대상 사용자의 복수의 필기 글꼴 데이터와 복수의 기초 글꼴 데이터베이스 중의 각 기초 글꼴 데이터베이스에 있는 복수의 상응하는 글꼴 데이터 사이의 유사도의 합을 포함한다.
예를 들어, N(N는 1보다 큰 자연수임)개의 기초 글꼴 데이터베이스를 이용하여 유사도 비교 모델을 미리 훈련한 경우, 대상 사용자(예를 들어, 새로운 사용자)가 100 개의 필기 글씨를 입력하면, 이 100 개의 필기 글씨의 글꼴 데이터 각각을 각 기초 글꼴 데이터베이스 중의 100 개의 상응하는 글꼴 데이터와 훈련된 유사도 비교 모델로 입력하여, 이 유사도 비교 모델은 비교될 글꼴 데이터가 각 기초 글꼴 데이터베이스 중의 상응하는 글꼴 데이터와 유사한 확률
Figure pat00001
를 출력한다. 아래에서, 글꼴 사이의 유사한 확률을 유사도라고 한다. 일부 실시예에서, 대상 사용자가 입력한 100 개의 필기 글씨의 글꼴 데이터와 기초 글꼴 데이터베이스 중의 상응하는 글꼴 데이터 사이의 유사도의 합을 계산하여, 대상 사용자의 필기 글씨의 글꼴 데이터와 가장 유사한 기초 글꼴 데이터베이스를 아래와 같이 얻을 수 있다.
Figure pat00002
대상 사용자의 필기 글꼴 데이터와 가장 유사한 기초 글꼴 데이터베이스를 후보 글꼴 데이터베이스로 할 수 있다.
단계 S120에서, 후보 글꼴 데이터베이스를 생성하기 위한 훈련된 기초 글꼴 데이터베이스 모델을 이용하여, 대상 사용자의 필기 글꼴 데이터를 조정하여, 대상 사용자에 대한 대상 글꼴 데이터베이스를 얻는다.
일부 실시예에서, 후보 글꼴 데이터베이스를 생성하기 위한 훈련된 기초 글꼴 데이터베이스 모델을 이용하여, 표준 글꼴의 기초 필획을 입력으로, 대상 사용자의 필기 글꼴의 기초 필획을 출력으로 한다. 일부 실시예에서, 대상 사용자의 필기 글꼴의 기초 필획은 코히런트 포인트 드리프트(CPD) 매칭 알고리즘을 사용하여 대상 사용자의 필기 글씨를 분할하여 얻은 것이다.
도 2는 본 개시의 실시예에 따른 코히런트 포인트 드리프트(CPD) 매칭 알고리즘을 사용하여 사용자의 필기 글씨를 분할하는 효과를 나타낸다.
도 2에 도시된 바와 같이, (210)은 사용자가 입력한 필기 글씨를 나타내며, (220)은 표준 해서체 글씨를 나타낸다. 사용자의 필기 글씨와 표준 해서체 글씨는 CPD 매칭을 통해, 매칭 결과(230)를 얻는다.
일부 실시예에서, CPD 매칭 알고리즘를 사용하여 매칭된 매칭 결과(230)를 필터링하여, 부정확한 결과로 결정된 결과를 제거할 수도 있다.
본 개시의 실시예는 미리 훈련된 기초 글꼴 데이터베이스 모델을 이용하여, 대상 사용자에 대한 대상 글꼴 데이터베이스를 생성함으로써, 대상 사용자가 소량의 필기 글꼴 데이터만을 제공하면 효과가 안정적인 글꼴 데이터베이스 모델을 얻을 수 있다. 본 개시의 실시예에 따른 글꼴 데이터베이스 생성 방법은 훈련 과정이 간단하고, 처리 단계가 적으며, 모델 개발 효율이 높다.
도 3은 본 개시의 다른 실시예에 따른 글꼴 데이터베이스를 생성하기 위한 방법(300)의 흐름도를 나타낸다.
방법(300) 중의 단계 (S310) 및 (S320)은 도 1을 참조하여 설명한 단계(S110) 및 (S120)과 같으며, 간결성을 위해, 여기서 단계(S310) 및 (S320)에 대한 중복 설명을 생략한다.
방법(300)은 단계(S330)를 더 포함할 수 있다. 단계(S330)에서, 대상 사용자의 필기 글꼴 데이터의 편방 데이터를 이용하여 대상 글꼴 데이터베이스 중의 대응하는 편방 데이터를 대체한다.
일부 실시예에서, 대체 후의 편방 이미지 데이터의 중심 위치와 대체 전의 편방 이미지 데이터의 중심 위치 사이의 차이를 계산하여, 이 차이에 기반하여 대체 후의 편방 이미지 데이터의 위치를 조정한다.
도 4는 본 개시의 실시예에 따른 편방 이미지 데이터의 중심 위치를 조정하는 설명도를 나타낸다.
도 4를 참조하여, 대상 글꼴 데이터베이스 중의 특정 글꼴 데이터에 대응하는 편방 이미지(S1)(도 4에 도시된 “손수변”)의 모든 필획(간결성을 위해, 아래 “필획”이라고 함)으로 이루어진 경계 틀(410)
Figure pat00003
을 계산하고, 여기서
Figure pat00004
는 경계 틀(410)이 위치하는 x-y축 좌표를 나타내며,
Figure pat00005
는 경계 틀의 너비를 나타내며,
Figure pat00006
는 경계 틀의 높이를 나타낸다. 편방 이미지(S1)의 모든 필획의 공통적인 중심(
Figure pat00007
), 즉 편방 이미지(S1)의 중심(
Figure pat00008
)을 계산한다. 대상 사용자가 입력한 글꼴 데이터에 대응하는 글꼴 이미지로부터 편방 이미지(S1)와 같은 유형의 편방 이미지(S2)를 분할하여, 편방 이미지 (S1)를 편방 이미지(S2)로 대체하여 경계 틀(410)
Figure pat00009
에 놓는다.
일부 실시예에서, 대체 후의 편방 이미지(S2)의 중심 위치와 대체 전의 편방 이미지(S1)의 중심 위치 사이의 차이를 계산하여, 이 차이에 기반하여 대체 후의 편방 이미지(S2)의 위치를 조정할 수도 있다. 구체적으로, 편방 이미지(S2)의 모든 필획의 공통적인 중심(
Figure pat00010
)(즉 편방 이미지(S2)의 중심(
Figure pat00011
))을 계산하여, 편방 이미지 (S2)의 중심(
Figure pat00012
)과 편방 이미지(S1)의 중심
Figure pat00013
의 차이를 계산하여, 둘 사이의 중심 위치의 차이를
Figure pat00014
로 얻는다. 이 차이
Figure pat00015
에 기반하여, 경계 틀(310)
Figure pat00016
Figure pat00017
로 이동하여, 편방 이미지 (S2)의 중심
Figure pat00018
가 편방 이미지(S1)의 중심(
Figure pat00019
)과 정렬되도록 한다.
본 개시의 실시예는 대상 사용자의 필기 글꼴 데이터의 편방 데이터를 이용하여 대상 글꼴 데이터베이스 중의 대응하는 편방 데이터를 대체함으로써, 사용자의 글꼴 스타일을 더욱 반영한다. 또한, 중심 정렬에 기반한 방법으로 대체 후의 편방 이미지의 위치를 조정함으로써, 대체 후의 편방 이미지가 원래의 글씨의 이미지의 다른 부분과 더욱 조화롭도록 한다.
도 5는 본 개시의 실시예에 따른 신경망 모델의 훈련 방법(500)의 흐름도를 나타낸다. 신경망 모델은 기초 글꼴 데이터베이스 모델 및 유사도 비교 모델을 포함한다.
단계 S510에서,복수의 사용자의 필기 글꼴 데이터를 이용하여 기초 글꼴 데이터베이스 모델을 훈련하여, 상기 복수의 사용자 중의 각 사용자가 각각에 대응하는 기초 글꼴 데이터베이스 모델 및 기초 글꼴 데이터베이스를 갖도록 한다. 기초 글꼴 데이터베이스 모델의 입력은 표준 글꼴(예를 들어, 표준 해서체)의 기초 필획이며, 출력은 복수의 사용자 중의 각 사용자의 필기 글꼴의 기초 필획이다.
단계 S520에서, 복수의 사용자의 복수의 기초 글꼴 데이터베이스를 이용하여 유사도 비교 모델을 훈련한다. 유사도 비교 모델은 두 개 이상의 글꼴 이미지 데이터 사이의 유사도를 비교할 수 있다.
도 6은 본 개시의 실시예에 따른 기초 글꼴 데이터베이스 모델(600)의 모델 구조의 설명도를 나타낸다.
도 6을 참조하여, 표준 글꼴(예를 들어, 표준 해서체)의 기초 필획을 입력으로, 복수의 사용자 중의 각 사용자의 필기 글꼴의 기초 필획을 출력으로 하여, 기초 글꼴 데이터베이스 모델(600)을 훈련한다. 예를 들어, 입력은 도 6에 도시된 바와 같은 입력(1), 입력(2)……입력(N)이 될 수 으며, 출력은 도 6에 도시된 바와 같은 출력(1), 출력(2)……출력(N)이 될 수 있다.
일부 실시예에서, 복수의 사용자 중의 각 사용자의 필기 글꼴의 기초 필획은 코히런트 포인트 드리프트(CPD) 매칭 알고리즘을 사용하여 각 사용자의 필기 글씨를 분할하여 얻은 것이다. CPD 매칭 알고리즘을 사용하여 대상 사용자의 필기 글씨를 분할하는 효과가 도 2에 도시된 바와 같다.
일부 실시예에서, CPD 매칭 알고리즘을 사용하여 매칭된 결과를 필터링하여, 부정확한 결과로 결정된 결과를 제거할 수도 있다.
구체적으로, CPD 매칭 알고리즘을 사용하여 분할된 각 기초 필획에 대해 20점씩 균일하게 샘플링하고, 이 20개의 점의 중심점(Xc, Yc)을 계산한다. 그 후에, 이 20개의 점의 각 점과 중심점의 좌표 차이를 계산하여, 각 점과 중심점의 편차치(Xi-Xc, Yi-Yc)를 얻고, 여기서 i는 점의 색인을 나타낸다. 또한, CPD 매칭 알고리즘을 통해 분할된 기초 필획이 속하는 분류를 결정할 수도 있다. 여기서, 한자를 예를 들면, 한자의 모든 필획은 가로획, 세로획, 점, 삐침, 파임 등 30개의 기초 필획으로 분류될 수 있다. 즉, CPD 매칭 알고리즘을 통해 분할된 기초 필획은 이 30개의 기초 필획 중의 어느 것에 속한 것을 결정할 수도 있다. 마지막으로, 기초 글꼴 데이터베이스 모델(600)에 대한 입력, 즉 표준 글꼴의 기초 필획을 얻으며, 이는 차원이 20*2+30=70 차원인 특징 벡터이다. 여기서, 20점의 샘플링을 예를 들고, 각 점은 좌표(x,y)로 나타내, 즉 20*2 차원이 되며, 30은 기초 필획의 유형이 30가지라는 의미이다. 기초 글꼴 데이터베이스 모델(600)의 출력은 복수의 사용자 중의 각 사용자의 필기 글꼴의 기초 필획이다.
본 개시의 실시예에 따르면, 기초 글꼴 데이터베이스 모델(600)의 입력과 출력은 시퀀스 길이가 일치하기 때문에, 디코더 부분을 생략하고, 모델(600) 중의 인코더 구조만을 모델의 본체로 이용하여, 모델의 크기를 줄일 수 있다.
도 7은 본 개시의 실시예에 따른 유사도 비교 모델를 훈련하는 방법의 흐름도를 나타낸다. 이 유사도 비교 모델은 두 개 이상의 글꼴 데이터 사이의 유사도를 비교할 수 있다.
단계 S721에서, 복수의 기초 글꼴 데이터베이스 중의 N 개의 기초 글꼴 데이터베이스에서 두 개의 이미지 데이터를 임의로 선택하여 이미지 페어를 구성하고, 여기서 N 개의 기초 글꼴 데이터베이스는 배열
Figure pat00020
로 나타내고 N는 1보다 큰 자연수이다.
단계 S722에서, 이미지 데이터에 라벨 label을 부여하며, 이미지 데이터 페어는 동일한 기초 글꼴 데이터베이스로부터의 것으로 결정되면 label 값은 1이고, 그렇지 않으면 label 값은 0이다.
단계 S723에서, 이미지 페어를 구성하는 두 개의 이미지 데이터를 순서대로 가중치 공유 네트워크에 입력하여, 이 두 개의 이미지 데이터의 이미지 특징을 각각 표현하는 특징 벡터
Figure pat00021
및 특징 벡터
Figure pat00022
를 얻는다.
단계 S724에서, 특징 벡터
Figure pat00023
및 특징 벡터
Figure pat00024
사이의 거리를 계산한다.
단계 S725에서, 거리 및 label에 따라 유사도 비교 모델의 손실 함수를 얻는다.
단계 S726에서, 상기 손실 함수를 이용하여 유사도 비교 모델을 업데이트한다.
도 8은 본 개시의 실시예에 따른 유사도 비교 모델(800)의 모델 구조의 설명도를 나타낸다.
도 8을 참조하여, 두 개의 이미지 데이터 (
Figure pat00025
) 및 (
Figure pat00026
)로 구성된 이미지 데이터 페어에 대하여 라벨(label)을 부여하며, 이미지 데이터 페어는 동일한 기초 글꼴 데이터베이스로부터의 것으로 결정되면 label 값은 1이고, 그렇지 않으면 label 값은 0이다.
이미지 페어를 구성하는 두 개의 이미지 데이터(
Figure pat00027
) 및 (
Figure pat00028
)를 각각 가중치 공유 네트워크(810)를 입력하여, 출력 특징1 및 출력 특징2를 얻는다. 예를 들어, 가중치 공유 네트워크(810)는 컨볼루션 신경망 및 완전 연결 층(CNN&FC)을 포함할 수 있다. 예를 들어, 출력 특징1은 이미지 데이터(
Figure pat00029
)의 특징 벡터(
Figure pat00030
)일 수 있고, 출력 특징2는 이미지 데이터(
Figure pat00031
)의 특징 벡터(
Figure pat00032
)일 수 있다. 그 후에, 특징 벡터(
Figure pat00033
)와 특징 벡터(
Figure pat00034
) 사이의 거리(Distance)를 계산한다.
거리(Distance) 및 label에 따라 유사도 비교 모델(800)의 손실 함수
Figure pat00035
를 얻고, 손실 함수
Figure pat00036
는 아래와 같이 나타낸다.
Figure pat00037
여기서,
Figure pat00038
Figure pat00039
는 각각 두 개의 이미지 데이터를 나타내며, metric은 유클리디안 거리(Euclidean distance)를 나타낸다. 손실 함수Loss는 유사도 비교 모델(800)을 업데이트하는 데 사용할 수 있다. 유사도 비교 모델(800)의 출력은 입력된 두 개의 이미지 데이터가 서로 유사한 확률, 즉 이 두 개의 이미지 데이터가 N 개의 기초 글꼴 데이터베이스 중의 하나에 속하는 확률
Figure pat00040
를 포함할 수 있다.
도 9는 본 개시의 실시예에 따른 글꼴 데이터베이스 생성의 효과의 설명도를 나타낸다. 도 9에 도시된 바와 같이, 대상 사용자의 필기 글꼴 데이터의 편방 데이터를 이용하여 대상 글꼴 데이터베이스 중의 대응하는 편방 데이터를 대체함으로써, 사용자 필기 글씨 중의 연속 획의 필획 및 연속 획 편방을 더욱 잘 보존할 수 있어, 사용자 필기 글씨의 글꼴 스타일을 더욱 반영한다.
도 10은 본 개시의 실시예에 따른 글꼴 데이터베이스를 생성하기 위한 장치(1000)의 블록도이다.
도 10에 도시된 바와 같이, 글꼴 데이터베이스를 생성하기 위한 장치(1000)는 결정 모듈(1010) 및 조정 모듈(1020)을 포함한다.
결정 모듈(1010)은 훈련된 유사도 비교 모델을 이용하여, 대상 사용자의 필기 글꼴 데이터를 복수의 기초 글꼴 데이터베이스와 각각 비교하여, 복수의 기초 글꼴 데이터베이스 중, 대상 사용자의 필기 글꼴 데이터와 가장 유사한 기초 글꼴 데이터베이스를 후보 글꼴 데이터베이스로 결정한다.
조정 모듈(1020)은 후보 글꼴 데이터베이스를 생성하기 위한 훈련된 기초 글꼴 데이터베이스 모델을 이용하여, 대상 사용자의 필기 글꼴 데이터를 조정하여, 대상 사용자에 대한 대상 글꼴 데이터베이스를 얻는다.
도 11은 본 개시의 실시예에 따른 신경망 모델의 훈련 장치(1100)의 블록도이다. 이 신경망 모델은 기초 글꼴 데이터베이스 모델 및 유사도 비교 모델을 포함한다.
도 11에 도시된 바와 같이, 훈련 장치(1100)는 기초 글꼴 데이터베이스 모델 훈련 모듈(1110) 및 유사도 비교 모델 훈련 모듈(1120)을 포함한다.
기초 글꼴 데이터베이스 모델 훈련 모듈(1110)은 복수의 사용자의 필기 글꼴 데이터를 이용하여 기초 글꼴 데이터베이스 모델을 훈련하여, 복수의 사용자 중의 각 사용자가 각각에 대응하는 기초 글꼴 데이터베이스 모델 및 기초 글꼴 데이터베이스를 갖도록 한다.
유사도 비교 모델 훈련 모듈(1120)은 복수의 사용자의 복수의 기초 글꼴 데이터베이스를 이용하여 유사도 비교 모델을 훈련한다.
본 개시의 실시예에 따르면, 본 개시는 전자 기기, 판독 가능 저장 매체 및 컴퓨터 프로그램 제품을 더 제공한다.
도 12은 본 개시의 실시예를 실시하기 위해 사용할 수 있는 전자 기기(1200)의 블록도를 나타낸다. 전자 기기(1200)는 랩톱 컴퓨터, 데스크톱 컴퓨터, 워크스테이션, 개인 휴대 정보 단말기, 서버, 블레이드 서버, 메인 프레임 컴퓨터 및 기타 적합한 컴퓨터와 같은 다양한 형식의 디지털 컴퓨터를 나타내기 위한 것이다. 전자 기기는 개인 휴대 정보 단말기, 셀룰러폰, 스마트폰, 웨어러블 기기 및 기타 유사한 컴퓨팅 장치와 같은 다양한 형식의 모바일 장치를 나타낼 수도 있다. 본문에 기재된 부품, 그들의 연결 및 관계, 및 그들의 기능은 단지 예시로 할 것이고 본문에서 설명 및/또는 요구한 본 개시의 구현을 제한하려는 것은 아니다.
도 12에 도시한 바와 같이 기기(1200)는 읽기 전용 메모리(ROM)(1202)에 저장된 컴퓨터 프로그램 또는 저장 유닛(1208)으로부터 랜덤 액세스 메모리(RAM)(1203)에 로딩된 컴퓨터 프로그램에 따라 다양한 적합한 동작 및 처리를 실행할 수 있는 컴퓨팅 유닛(1201)을 포함한다. RAM(1203)에는 기기(1200)가 동작하는데 필요한 다양한 프로그램 및 데이터를 저장할 수도 있다. 컴퓨팅 유닛(1201), ROM(1202) 및 RAM(1203)은 버스(1204)를 통해 서로 연결된다. 입력/출력(I/O) 인터페이스(1205)도 버스(1204)에 연결된다.
기기(1200) 중의 복수의 부품은 I/O 인터페이스(1205)에 연결되며, 키보드, 마우스 등과 같은 입력 유닛(1206); 다양한 유형의 디스플레이, 스피커 등과 같은 출력 유닛(1207); 자기 디스크, 광 디스크 등과 같은 저장 유닛(1208); 및 네트워크 카드, 모뎀, 무선 통신 송수신기 등과 같은 통신 유닛(1209)을 포함한다. 통신 유닛(1209)은 기기(1200)로 하여금 인터넷과 같은 컴퓨터 네트워크 및/또는 다양한 통신 네트워크를 통해 기타 기기와 정보/데이터를 교환하도록 허용한다.
컴퓨팅 유닛(1201)은 다양한 처리 및 계산 능력을 가진 범용 및/또는 전용 처리 컴포넌트일 수 있다. 컴퓨팅 유닛(1201)의 일부 예시는 중앙 처리 유닛(CPU), 그래픽 처리 유닛(GPU), 다양한 전용적인 인공 지능(AI) 컴퓨팅 칩, 기계 학습 모델 알고리즘을 실행하는 다양한 컴퓨팅 유닛, 디지털 신호 프로세서(DSP) 및 임의의 적합한 프로세서, 컨트롤러, 마이크로 컨트롤러 등을 포함하지만 이에 한정되지 않는다. 컴퓨팅 유닛(1201)은 상기에서 설명한 각 방법 및 처리, 예를 들어 글꼴 데이터베이스를 생성하기 위한 방법 및 신경망 모델의 훈련 방법을 실행한다. 예를 들어 일부 실시예에서, 글꼴 데이터베이스를 생성하기 위한 방법 및 신경망 모델의 훈련 방법은 컴퓨터 소프터웨어 프로그램으로 구현될 수 있으며, 저장 유닛(1208)과 같은 기계 판독 가능 매체에 유형적으로 저장될 수 있다. 일부 실시예에서 컴퓨터 프로그램의 부분 또는 전부는 ROM(1202) 및/또는 통신 유닛(1209)을 통해 기기(1200)에 로딩되거나 설치될 수 있다. 컴퓨터 프로그램이 RAM(1203)에 로딩되고 컴퓨팅 유닛(1201)에 의해 실행될 때 상기에서 설명한 글꼴 데이터베이스를 생성하기 위한 방법 및 신경망 모델의 훈련 방법 중의 하나 또는 복수의 단계를 실행할 수 있다. 선택적으로, 기타 실시예에서, 컴퓨팅 유닛(1201)은 기타 임의의 적합한 방식을 통해(예를 들어 펌웨어에 의해) 글꼴 데이터베이스를 생성하기 위한 방법 및 신경망 모델의 훈련 방법을 실행하도록 구성될 수 있다.
본문에서 이상 설명한 시스템 및 기술의 다양한 실시 방식은 디지털 전자 회로 시스템, 집적 회로 시스템, 필드 프로그램 가능 게이트 어레이(FPGA), 전용 집적 회로(ASIC), 특정 용도 표준 제품(ASSP), 시스템 온 칩(SOC), 복합 프로그램 가능 논리 소자(CPLD), 컴퓨터 하드웨어, 펌웨어, 소프트웨어 및/또는 이들의 조합에서 구현할 수 있다. 이러한 여러가지 실시 방식은 하나 또는 복수의 컴퓨터 프로그램에서 실시되는 것을 포함할 수 있으며, 상기 하나 또는 복수의 컴퓨터 프로그램은 적어도 하나의 프로그램 가능 프로세서를 포함하는 프로그램 가능 시스템에서 실행 및/또는 해석될 수 있으며, 상기 프로그램 가능 프로세서는 전용 또는 범용 프로그램 가능 프로세서일 수 있으며, 저장 시스템, 적어도 하나의 입력 장치 및 적어도 하나의 출력 장치로부터 데이터 및 명령어를 수신할 수 있으며, 데이터 및 명령어를 상기 저장 시스템, 상기 적어도 하나의 입력 장치 및 상기 적어도 하나의 출력 장치에 전송할 수 있다.
본 개시의 방법을 실시하기 위한 프로그램 코드는 하나 또는 복수의 프로그래밍 언어의 임의의 조합을 채용하여 프로그래밍할 수 있다. 이러한 프로그램 코드는 범용 컴퓨터, 전용 컴퓨터 또는 기타 프로그램 가능 데이터 처리 장치의 프로세서 또는 컨트롤러에 제공됨으로써 프로그램 코드가 프로세서 또는 컨트롤러에 의해 실행될 때 흐름도 및/또는 블록도에서 규정한 기능 및/또는 단계가 실시될 수 있도록 한다. 프로그램 코드는 전부 기계에서 실행, 부분적으로 기계에서 실행되고, 독립형 소프트웨어 패키지로서 부분적으로 기계에서 실행되고 부분적으로 원격 기계에서 실행 또는 전부 원격 기계 또는 서버에서 실행될 수 있다.
본 개시의 문맥에서 기계 판독 가능 매체는 유형 매체일 수 있으며, 이는 명령어 실행 시스템, 장치 또는 기기가 사용하거나 명령어 실행 시스템, 장치 또는 기기와 결합하여 사용하기 위한 프로그램을 포함하거나 저장할 수 있다. 기계 판독 가능 매체는 기계 판독 가능 신호 매체 또는 기계 판독 가능 저장 매체일 수 있다. 기계 판독 가능 매체는 전자, 자기, 광학, 전자기, 적외선 또는 반도체 시스템, 장치 또는 기기, 또는 상기 콘텐츠의 임의의 적합한 조합을 포함할 수 있지만 이에 한정되지 않는다. 기계 판독 가능 저장 매체의 더 구체적인 예시는 하나 또는 복수의 와이어를 기반으로 한 전기적 연결, 휴대용 컴퓨터 디스크, 하드 디스크, 랜덤 액세스 메모리(RAM), 읽기 전용 메모리(ROM), 소거 가능 및 프로그램 가능 읽기 전용 메모리(EPROM 또는 플래시 메모리), 광섬유, 휴대용 콤팩트 디스크 읽기 전용 메모리(CD-ROM), 광학적 저장 기기, 자기적 저장 기기 또는 상기 콘텐츠의 임의의 적합한 조합을 포함한다.
사용자와의 인터랙션을 제공하기 위하여, 컴퓨터에서 여기에서 설명한 시스템 및 기술을 실시할 수 있으며, 해당 컴퓨터는 사용자에게 정보를 나타내기 위한 디스플레이 장치(예를 들어 CRT(음극선 관) 또는 LCD(액정 디스플레이) 모니터); 및 키보드와 지향 장치(예를 들어 마우스 또는 트랙볼)를 가지며, 사용자는 해당 키보드 및 해당 지향 장치를 통해 컴퓨터에 입력을 제공할 수 있다. 기타 종류의 장치도 사용자와의 인터랙션을 제공하는 데 사용될 수 있으며, 예를 들어 사용자에게 제공되는 피드백은 임의의 형식의 센싱 피드백(예를 들어 시각적 피드백, 청각적 피드백 또는 촉각적 피드백)일 수 있으며, 또 임의의 형식(소리 입력, 음성 입력 또는 촉각 입력을 포함)으로 사용자로부터의 입력을 접수할 수 있다.
여기에서 설명한 시스템 및 기술을 백그라운드 부품을 포함하는 컴퓨팅 시스템(예를 들어 데이터 서버) 또는 미들웨어 부품을 포함하는 컴퓨팅 시스템(예를 들어 응용 서버) 또는 프런트 엔드 부품을 포함하는 컴퓨팅 시스템(예를 들어 그래픽 사용자 인터페이스 또는 네트워크 브라우저를 가진 사용자 컴퓨터, 사용자는 해당 그래픽 사용자 인터페이스 또는 해당 네트워크 브라우저를 통해 여기에서 설명한 시스템 및 기술의 실시 방식과 인터랙션할 수 있음), 또는 이러한 백그라운드 부품, 미들웨어 부품 또는 프런트 엔드 부품을 포함하는 임의의 조합의 컴퓨팅 시스템에서 실시할 수 있다. 임의의 형식 또는 매체의 디지털 데이터 통신(예를 들어 통신 네트워크)을 통해 시스템의 부품을 서로 연결할 수 있다. 통신 네트워크의 예시로는 근거리 통신망(LAN), 광역 통신망(WAN) 및 인터넷을 포함한다.
컴퓨터 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트 및 서버는 일반적으로 서로 멀리 떨어져 있으며, 보통 통신 네트워크를 통해 서로 인터랙션 한다. 대응되는 컴퓨터에서 실행하고 또 서로 클라이언트-서버 관계를 가지는 컴퓨터 프로그램을 가짐으로써, 클라이언트와 서버의 관계를 생성한다. 서버는 클라우드 서버일 수 있거나, 분산형 시스템 서버일 수도 있거나, 블록체인을 결합한 서버일 수도 있다.
이해해야 할 것은, 위에서 설명한 바와 같은 다양한 형식의 프로세스를 사용하여, 단계를 다시 순서 배열, 추가 또는 삭제할 수 있다. 예를 들어 본 개시에 기재된 각 단계는 병행적으로 실행할 수도 있고 순차적으로 실행할 수도 있으며 상이한 순서로 실행할 수도 있는 바, 본 개시에서 기재된 기술적 해결 수단에서 기대하는 결과를 구현할 수만 있으면, 본문은 이에 대해 제한하지 않는다.
본 개시의 기술 방안에서, 언급된 사용자 개인 정보의 수집, 저장, 사용, 가공, 전송, 제공 및 공개 등은 모두 관련 법률과 법규의 규정에 부합되고 공서양속을 위배하지 않는다.
상기 구체적인 실시 방식은 본 개시의 보호 범위를 한정하지 않는다. 본 기술 분야에서 통상의 지식을 가진 자들은 설계 요구와 기타 요소에 따라 다양한 수정, 조합, 하위 조합 및 교체를 할 수 있다는 것을 이해해야 한다. 본 개시의 사상 및 원칙 내에서 진행한 임의의 수정, 균등한 교체 및 개선 등은 모두 본 개시의 보호 범위 내에 포함되어야 한다.

Claims (19)

  1. 훈련된 유사도 비교 모델을 이용하여, 복수의 기초 글꼴 데이터베이스 중, 대상 사용자의 필기 글꼴 데이터와 가장 유사한 기초 글꼴 데이터베이스를 후보 글꼴 데이터베이스로 결정하는 것; 및
    상기 후보 글꼴 데이터베이스를 생성하기 위한 훈련된 기초 글꼴 데이터베이스 모델을 이용하여, 상기 대상 사용자의 필기 글꼴 데이터를 조정하여, 상기 대상 사용자에 대한 대상 글꼴 데이터베이스를 얻는 것을 포함하는
    글꼴 데이터베이스를 생성하기 위한 방법.
  2. 제 1 항에 있어서,
    복수의 기초 글꼴 데이터베이스 중, 대상 사용자의 필기 글꼴 데이터와 가장 유사한 기초 글꼴 데이터베이스를 결정하는 것은
    훈련된 유사도 비교 모델을 이용하여, 상기 대상 사용자의 필기 글꼴 데이터와 상기 복수의 기초 글꼴 데이터베이스 중의 각 기초 글꼴 데이터베이스에 있는 상응하는 글꼴 데이터 사이의 유사도를 결정하는 것; 및
    상기 복수의 기초 글꼴 데이터베이스 중의 최대 유사도를 가진 기초 글꼴 데이터베이스를 상기 후보 글꼴 데이터베이스로 하는 것을 포함하는
    글꼴 데이터베이스를 생성하기 위한 방법.
  3. 제 2 항에 있어서,
    상기 유사도는 상기 대상 사용자의 복수의 필기 글꼴 데이터와 상기 복수의 기초 글꼴 데이터베이스 중의 각 기초 글꼴 데이터베이스에 있는 복수의 상응하는 글꼴 데이터 사이의 유사도의 합을 포함하는
    글꼴 데이터베이스를 생성하기 위한 방법.
  4. 제 1 항에 있어서,
    상기 대상 사용자의 필기 글꼴 데이터의 편방 데이터를 이용하여 상기 대상 글꼴 데이터베이스 중의 대응하는 편방 데이터를 대체하는 것을 더 포함하는
    글꼴 데이터베이스를 생성하기 위한 방법.
  5. 제 4 항에 있어서,
    상기 대상 사용자의 필기 글꼴 데이터의 편방 데이터를 이용하여 상기 대상 글꼴 데이터베이스 중의 대응하는 편방 데이터를 대체하는 것은
    대체 후의 편방 이미지 데이터의 중심 위치와 대체 전의 편방 이미지 데이터의 중심 위치 사이의 차이를 계산하는 것; 및
    상기 차이에 기반하여 대체 후의 편방 이미지 데이터의 위치를 조정하는 것을 포함하는
    글꼴 데이터베이스를 생성하기 위한 방법.
  6. 제 1 항에 있어서,
    상기 후보 글꼴 데이터베이스를 생성하기 위한 훈련된 기초 글꼴 데이터베이스 모델을 이용하여, 상기 대상 사용자의 필기 글꼴 데이터를 조정하는 것은
    상기 후보 글꼴 데이터베이스를 생성하기 위한 훈련된 기초 글꼴 데이터베이스 모델을 이용하여, 표준 글꼴의 기초 필획을 입력으로, 상기 대상 사용자의 필기 글꼴의 기초 필획을 출력으로 하는 것을 포함하는
    글꼴 데이터베이스를 생성하기 위한 방법.
  7. 제 6 항에 있어서,
    상기 대상 사용자의 필기 글꼴의 기초 필획은 코히런트 포인트 드리프트 CPD 매칭 알고리즘을 사용하여 상기 대상 사용자의 필기 글씨를 분할하여 얻은 것인
    글꼴 데이터베이스를 생성하기 위한 방법.
  8. 제 7 항에 있어서,
    상기 CPD 매칭 알고리즘을 사용하여 매칭된 결과를 필터링하여, 부정확한 결과로 결정된 결과를 제거하는 것을 더 포함하는
    글꼴 데이터베이스를 생성하기 위한 방법.
  9. 기초 글꼴 데이터베이스 모델 및 유사도 비교 모델을 포함하는 신경망 모델의 훈련 방법에 있어서,
    복수의 사용자의 필기 글꼴 데이터를 이용하여 상기 기초 글꼴 데이터베이스 모델을 훈련하여, 상기 복수의 사용자 중의 각 사용자가 각각에 대응하는 기초 글꼴 데이터베이스 모델 및 기초 글꼴 데이터베이스를 갖도록 하는 것; 및
    상기 복수의 사용자의 복수의 기초 글꼴 데이터베이스를 이용하여 유사도 비교 모델을 훈련하는 것을 포함하는
    신경망 모델의 훈련 방법.
  10. 제 9 항에 있어서,
    상기 기초 글꼴 데이터가 글꼴의 이미지 데이터를 포함하며, 상기 복수의 사용자의 복수의 기초 글꼴 데이터베이스를 이용하여 유사도 비교 모델을 훈련하는 것은
    상기 복수의 기초 글꼴 데이터베이스 중의 N 개의 기초 글꼴 데이터베이스에서 두 개의 이미지 데이터를 임의로 선택하여 이미지 페어를 구성하는 것, 여기서 상기 N 개의 기초 글꼴 데이터베이스는 배열
    Figure pat00041
    로 나타내고 N는 1보다 큰 자연수임;
    상기 이미지 데이터에 대하여 라벨 label을 부여하며, 상기 이미지 데이터 페어는 동일한 기초 글꼴 데이터베이스로부터의 것으로 결정되면 label 값은 1이고, 그렇지 않으면 label 값은 0인 것;
    상기 두 개의 이미지 데이터를 순서대로 가중치 공유 네트워크에 입력하여, 상기 두 개의 이미지 데이터의 이미지 특징을 각각 표현하는 특징 벡터
    Figure pat00042
    및 특징 벡터
    Figure pat00043
    를 얻는 것;
    상기 특징 벡터
    Figure pat00044
    와 상기 특징 벡터
    Figure pat00045
    사이의 거리를 계산하는 것;
    상기 거리와 상기 label에 따라 상기 유사도 비교 모델의 손실 함수를 얻는 것; 및
    상기 손실 함수를 이용하여 상기 유사도 비교 모델을 업데이트하는 것을 포함하는
    신경망 모델의 훈련 방법.
  11. 제 10 항에 있어서,
    상기 유사도 비교 모델의 손실 함수인
    Figure pat00046
    는 아래와 같이 나타내고,
    Figure pat00047

    여기서
    Figure pat00048
    Figure pat00049
    는 각각 상기 두 개의 이미지 데이터를 나타내고, metric은 유클리디안 거리를 나타내는
    신경망 모델의 훈련 방법.
  12. 제 9 항에 있어서,
    복수의 사용자의 필기 글꼴 데이터를 이용하여 상기 기초 글꼴 데이터베이스 모델을 훈련하는 것은
    표준 글꼴의 기초 필획을 입력으로, 상기 복수의 사용자 중의 각 사용자의 필기 글꼴의 기초 필획을 출력으로 하는 것을 포함하는
    신경망 모델의 훈련 방법.
  13. 제 12 항에 있어서,
    상기 복수의 사용자 중의 각 사용자의 필기 글꼴의 기초 필획은 코히런트 포인트 드리프트 CPD 매칭 알고리즘을 사용하여 상기 각 사용자의 필기 글씨를 분할하여 얻은 것인
    신경망 모델의 훈련 방법.
  14. 제 13 항에 있어서,
    상기 CPD 매칭 알고리즘을 사용하여 매칭된 결과를 필터링하여, 부정확한 결과로 결정된 결과를 제거하는 것을 더 포함하는
    신경망 모델의 훈련 방법.
  15. 훈련된 유사도 비교 모델을 이용하여, 대상 사용자의 필기 글꼴 데이터를 복수의 기초 글꼴 데이터베이스와 각각 비교하여, 상기 복수의 기초 글꼴 데이터베이스 중, 대상 사용자의 필기 글꼴 데이터와 가장 유사한 기초 글꼴 데이터베이스를 후보 글꼴 데이터베이스로 결정하는 결정 모듈; 및
    상기 후보 글꼴 데이터베이스를 생성하기 위한 훈련된 기초 글꼴 데이터베이스 모델을 이용하여, 상기 대상 사용자의 필기 글꼴 데이터를 조정하여, 상기 대상 사용자에 대한 대상 글꼴 데이터베이스를 얻는 조정 모듈을 포함하는
    글꼴 데이터베이스를 생성하기 위한 장치.
  16. 기초 글꼴 데이터베이스 모델 및 유사도 비교 모델을 포함하는 신경망 모델의 훈련 장치에 있어서,
    복수의 사용자의 필기 글꼴 데이터를 이용하여 상기 기초 글꼴 데이터베이스 모델을 훈련하여, 상기 복수의 사용자 중의 각 사용자가 각각에 대응하는 기초 글꼴 데이터베이스 모델 및 기초 글꼴 데이터베이스를 갖도록 하는 기초 글꼴 데이터베이스 모델 훈련 모듈; 및
    상기 복수의 사용자의 복수의 기초 글꼴 데이터베이스를 이용하여 유사도 비교 모델을 훈련하는 유사도 비교 모델 훈련 모듈을 포함하는
    신경망 모델의 훈련 장치.
  17. 적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서와 통신 연결된 메모리를 포함하고,
    상기 메모리에는 상기 적어도 하나의 프로세서에 의해 실행 가능한 명령어가 저장되어 있으며, 상기 명령어는 상기 적어도 하나의 프로세서에 의해 실행되어 상기 적어도 하나의 프로세서로 하여금 제 1 항 내지 제 8 항 중 어느 한 항에 따른 글꼴 데이터베이스를 생성하기 위한 방법 또는 제 9 항 내지 제 14 항 중 어느 한 항에 따른 신경망 모델의 훈련 방법을 실행할 수 있게 하는
    전자 기기.
  18. 컴퓨터로 하여금 제 1 항 내지 제 8 항 중 어느 한 항에 따른 글꼴 데이터베이스를 생성하기 위한 방법 또는 제 9 항 내지 제 14 항 중 어느 한 항에 따른 신경망 모델의 훈련 방법을 실행하게 하기 위한 컴퓨터 명령어가 저장되어 있는 비휘발성 컴퓨터 판독 가능 저장 매체.
  19. 프로세서에 의해 실행될 때 제 1 항 내지 제 8 항 중 어느 한 항에 따른 글꼴 데이터베이스를 생성하기 위한 방법 또는 제 9 항 내지 제 14 항 중 어느 한 항에 따른 신경망 모델의 훈련 방법을 구현하는 컴퓨터 프로그램.
KR1020220026390A 2021-04-20 2022-02-28 글꼴 데이터베이스의 생성 방법, 신경망 모델의 훈련 방법 및 장치, 전자 기기, 저장 매체, 컴퓨터 프로그램 KR20220034083A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110427857.1 2021-04-20
CN202110427857.1A CN113095421B (zh) 2021-04-20 2021-04-20 生成字体数据库的方法、神经网络模型的训练方法和装置

Publications (1)

Publication Number Publication Date
KR20220034083A true KR20220034083A (ko) 2022-03-17

Family

ID=76679270

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220026390A KR20220034083A (ko) 2021-04-20 2022-02-28 글꼴 데이터베이스의 생성 방법, 신경망 모델의 훈련 방법 및 장치, 전자 기기, 저장 매체, 컴퓨터 프로그램

Country Status (5)

Country Link
US (1) US11816908B2 (ko)
EP (1) EP4040404A3 (ko)
JP (1) JP2022048226A (ko)
KR (1) KR20220034083A (ko)
CN (1) CN113095421B (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11947896B2 (en) 2022-06-24 2024-04-02 Adobe Inc. Font recommendation
US11886809B1 (en) * 2022-10-31 2024-01-30 Adobe Inc. Identifying templates based on fonts
CN115601772B (zh) * 2022-12-15 2023-05-02 南京邮电大学 一种基于多模态学习的美学质量评价模型和方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106611172B (zh) * 2015-10-23 2019-11-08 北京大学 一种基于风格学习的汉字合成方法
CN106384094B (zh) * 2016-09-18 2019-07-19 北京大学 一种基于书写风格建模的中文字库自动生成方法
JP2019028094A (ja) * 2017-07-25 2019-02-21 大日本印刷株式会社 文字生成装置、プログラム及び文字出力装置
CN110009027B (zh) * 2019-03-28 2022-07-29 腾讯科技(深圳)有限公司 图像的比对方法、装置、存储介质及电子装置
CN110111243B (zh) * 2019-04-30 2023-05-12 山东浪潮科学研究院有限公司 一种利用ai技术美化手写字体的方法及装置
CN111079374B (zh) * 2019-12-06 2023-06-16 腾讯科技(深圳)有限公司 字体生成方法、装置和存储介质
CN112001416B (zh) * 2020-07-17 2021-09-07 北京邮电大学 一种自适应答题纸序列纠正方法

Also Published As

Publication number Publication date
EP4040404A2 (en) 2022-08-10
CN113095421B (zh) 2024-03-05
US20220180650A1 (en) 2022-06-09
EP4040404A3 (en) 2022-10-05
US11816908B2 (en) 2023-11-14
JP2022048226A (ja) 2022-03-25
CN113095421A (zh) 2021-07-09

Similar Documents

Publication Publication Date Title
KR20220034083A (ko) 글꼴 데이터베이스의 생성 방법, 신경망 모델의 훈련 방법 및 장치, 전자 기기, 저장 매체, 컴퓨터 프로그램
US20210406579A1 (en) Model training method, identification method, device, storage medium and program product
CN112926306B (zh) 文本纠错方法、装置、设备以及存储介质
KR20220034081A (ko) 적대적 네트워크 모델을 트레이닝하는 방법 및 장치, 문자 라이브러리를 구축하는 방법 및 장치, 전자장비, 저장매체 및 컴퓨터 프로그램
US20220148239A1 (en) Model training method and apparatus, font library establishment method and apparatus, device and storage medium
JP7289942B2 (ja) フォント生成モデルトレーニング方法、フォントライブラリ作成方法、フォント生成モデルトレーニング装置、フォントライブラリ作成装置、電子機器、コンピュータ可読記憶媒体、及び、コンピュータプログラム
JP7282932B2 (ja) フォント生成モデルトレーニング方法、字庫作成方法、装置及び機器
US20220270384A1 (en) Method for training adversarial network model, method for building character library, electronic device, and storage medium
KR102456535B1 (ko) 의료 사실 검증 방법, 장치, 전자 기기, 저장 매체 및 프로그램
CN113204615A (zh) 实体抽取方法、装置、设备和存储介质
CN113627439A (zh) 文本结构化处理方法、处理装置、电子设备以及存储介质
JP2023541742A (ja) ソートモデルのトレーニング方法及び装置、電子機器、コンピュータ可読記憶媒体、コンピュータプログラム
CN112749300A (zh) 用于视频分类的方法、装置、设备、存储介质和程序产品
CN112949433B (zh) 视频分类模型的生成方法、装置、设备和存储介质
CN111679829B (zh) 用户界面设计的确定方法和装置
CN111091001B (zh) 一种词语的词向量的生成方法、装置及设备
CN116259064B (zh) 表格结构识别方法、表格结构识别模型的训练方法及装置
CN112529058A (zh) 图像生成模型训练方法和装置、图像生成方法和装置
WO2024040870A1 (zh) 文本图像生成、训练、文本图像处理方法以及电子设备
JP2023078411A (ja) 情報処理方法、モデルトレーニング方法、装置、機器、媒体及びプログラム製品
JP2024006944A (ja) セマンティック検索モデルの訓練方法、装置、電子デバイス及び記憶媒体
JP7242797B2 (ja) 語句処理方法、機器及び記憶媒体
CN114926322A (zh) 图像生成方法、装置、电子设备和存储介质
JP2023039891A (ja) 文字生成モデルのトレーニング方法、文字生成方法、装置および機器
CN111914882A (zh) 支持向量机的生成方法、装置、电子设备及存储介质