KR20230089273A - 폰트 생성 시스템 및 이를 이용한 폰트 생성 방법 - Google Patents

폰트 생성 시스템 및 이를 이용한 폰트 생성 방법 Download PDF

Info

Publication number
KR20230089273A
KR20230089273A KR1020210177771A KR20210177771A KR20230089273A KR 20230089273 A KR20230089273 A KR 20230089273A KR 1020210177771 A KR1020210177771 A KR 1020210177771A KR 20210177771 A KR20210177771 A KR 20210177771A KR 20230089273 A KR20230089273 A KR 20230089273A
Authority
KR
South Korea
Prior art keywords
information
font
character
scale
module
Prior art date
Application number
KR1020210177771A
Other languages
English (en)
Other versions
KR102616255B1 (ko
Inventor
이미나
Original Assignee
이미나
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이미나 filed Critical 이미나
Priority to KR1020210177771A priority Critical patent/KR102616255B1/ko
Publication of KR20230089273A publication Critical patent/KR20230089273A/ko
Application granted granted Critical
Publication of KR102616255B1 publication Critical patent/KR102616255B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/109Font handling; Temporal or kinetic typography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/153Segmentation of character regions using recognition of characters or words
    • 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/16Image preprocessing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

본 발명은 폰트 생성 시스템 및 이를 이용한 폰트 생성 방법에 관한 것으로, 본 발명에 따르면, 다수의 문자 데이터 정보를 저장하는 데이터 베이스부, 이미지 정보를 입력 받아 문자열 이미지 정보를 생성하는 입력부, 상기 문자열 이미지 정보로부터 개별 문자 정보를 추출하고 문자 패턴을 학습하여 문자 패턴 정보를 생성하는 전처리부, 상기 문자 패턴 정보를 상기 문자 데이터 정보와 비교하여 스타일 전이 방식을 통해 상기 문자 패턴 정보를 분석하고 폰트 정보를 생성하는 분석부, 상기 폰트 정보를 사용자에게 표시하고 파일 변환 여부를 입력 받는 확인부 및 상기 폰트 정보를 폰트 파일로 변환하여 출력하는 출력부를 포함하고, 상기 확인부는, 파일 변환을 입력 받지 않을 경우, 상기 이미지 정보를 재입력 받는 것을 특징으로 하는 폰트 생성 시스템을 제공할 수 있다.
또한, 데이터 베이스부에서 다수의 문자 데이터 정보를 저장하는 문자 데이터 정보 저장단계, 입력부에서 이미지 정보를 입력 받아 문자열 이미지 정보를 생성하는 이미지 정보 생성단계, 전처리부에서 상기 문자열 이미지 정보로부터 개별 문자 정보를 추출하고 문자 패턴을 학습하여 문자 패턴 정보를 생성하는 전처리단계, 분석부에서 상기 문자 패턴 정보를 상기 문자 데이터 정보와 비교하여 스타일 전이 방식을 통해 상기 문자 패턴 정보를 분석하여 폰트 정보를 생성하는 분석단계, 확인부에서 상기 폰트 정보를 사용자에게 표시하고 파일 변환 여부를 확인하는 변환 여부 확인단계, 상기 변환 여부 확인단계에서 파일 변환을 입력 받지 않을 경우, 상기 이미지 정보 생성단계로 복귀하여 상기 이미지 정보를 재입력 받는 이미지 정보 재입력단계 및 상기 변환 여부 확인단계에서 파일 변환을 입력 받을 경우, 출력부에서 상기 폰트 정보를 폰트 파일로 변환하여 출력하는 폰트 출력단계를 포함하는 폰트 생성 방법을 제공할 수 있다.

Description

폰트 생성 시스템 및 이를 이용한 폰트 생성 방법{Font generation system and the font generation method using it}
본 발명은 폰트 생성 시스템 및 이를 이용한 폰트 생성 방법에 관한 발명으로서, 보다 상세하게는 이미지 정보로부터 문자열 이미지를 추출하여 문자 패턴을 학습하고, 학습된 문자 패턴을 통해 이미지 정보에 포함된 문자열 이미지 고유의 폰트 정보를 생성하는 폰트 생성 시스템 및 이를 이용한 폰트 생성 방법에 관한 것이다.
4차 산업혁명이 진행되는 현 시대에는, 무수히 많은 정보들이 디지털로 표현되고 여러 매체 속에서 디지털 정보의 한 예로 폰트를 접할 수 있다.
이러한 폰트는 개성 표현이 소비자 트렌드의 주요한 특성으로 부상하면서, 나만의 것에 대한 수요가 급증에 따라 자신만의 글씨체 역시 개성 표현 도구 중 하나로 각광받고 있다.
한글 폰트를 제작하기 위해서는 영문 로마자 폰트와 달리 제작 노동력, 비용 및 시간이 많이 소요된다.
예를 들어, 영문 폰트는 90여개의 글자를 디자인하는 것으로 글자체 한 벌을 만들 수 있지만, 한글 글자체의 경우 총 11,172개의 글자 디자인을 필요로 하여 한 벌의 글자체를 만들기 위해서는 다수의 디자이너가 투입되어야 하며, 그에 따른 제작 비용이 높아지게 된다.
또한, 종래에는 폰트가 DTP(Desktop Publishing) 또는 CTS(Computerized Typesetting System) 등에 사용되었다.
그러나, 이는, 출판 및 문서 작성의 전문 사용 분야에 국한된 기술로 자신만의 글씨체까지 폰트화하기는 어려운 실정이며, 한글 폰트를 이용하는 데 있어 법적인 문제로 곤란한 처지를 겪게 되는 사례들이 있어 사실상 폰트 파일의 사용 범위가 제한되어있는 경우가 대다수이다.
따라서, 보다 간편한 방법으로 사용자가 자신만의 특화된 폰트를 생성할 수 있는 시스템 및 방법이 필요한 실정이다.
종래기술에는 한국공개특허 제10-1993-0018418호 '그레이 스케일 폰트의 생성방법'이 공개되어 있다.
본 발명은 상기와 같은 문제점을 해결하기 위한 것으로, 본 발명의 실시 예에 따른 폰트 생성 시스템 및 이를 이용한 폰트 생성 방법은, 사용자로부터 입력 받은 이미지 정보의 문자 정보를 추출하고 문자 패턴을 학습하여 기저장된 문자 데이터들과 비교, 분석함으로써, 폰트를 생성하여 사용자가 자신만의 특화된 폰트를 쉽게 생성할 수 있는 폰트 생성 시스템 및 이를 이용한 폰트 생성 방법을 제공하는데 목적이 있다.
상기 과제를 해결하기 위한 본 발명의 실시 예에 따른 폰트 생성 시스템은 다수의 문자 데이터 정보를 저장하는 데이터 베이스부, 이미지 정보를 입력 받아 문자열 이미지 정보를 생성하는 입력부, 상기 문자열 이미지 정보로부터 개별 문자 정보를 추출하고 문자 패턴을 학습하여 문자 패턴 정보를 생성하는 전처리부, 상기 문자 패턴 정보를 상기 문자 데이터 정보와 비교하여 스타일 전이 방식을 통해 상기 문자 패턴 정보를 분석하고 폰트 정보를 생성하는 분석부, 상기 폰트 정보를 사용자에게 표시하고 파일 변환 여부를 입력 받는 확인부 및 상기 폰트 정보를 폰트 파일로 변환하여 출력하는 출력부를 포함할 수 있다.
여기서, 상기 확인부는, 파일 변환을 입력 받지 않을 경우, 상기 이미지 정보를 재입력 받을 수 있다.
또한, 상기 전처리부는, 상기 문자열 이미지 정보에 단색 음영을 적용하여 단색 문자열 정보로 변환하는 이미지 변환 모듈, 상기 단색 문자열 정보에서 문자에 대한 영역을 인식하여 문자 정보를 추출하는 문자 인식 모듈, 상기 문자 정보의 테두리를 팽창시켜 개별 문자에 대한 인식도를 높이고, 상기 개별 문자를 그룹화하여 개별 문자 정보를 추출하는 개별 문자 추출 모듈, 상기 개별 문자 정보의 테두리를 침식시켜 상기 개별 문자 정보의 끊어진 점이 있는 선을 제거하는 잡영 제거 모듈 및 상기 개별 문자 정보의 테두리를 축소시키고, 테두리를 따라 문자 패턴을 학습하여 상기 문자 패턴 정보를 생성하는 문자 패턴 학습 모듈을 포함할 수 있다.
또한, 상기 분석부는, 상기 문자 패턴 정보에 다수의 상기 문자 데이터 정보를 적용하여 다수의 가상 폰트 정보를 생성하는 가상 폰트 생성 모듈, 상기 가상 폰트 정보와 상기 문자 패턴 정보를 비교하여 유사도를 산출하는 폰트 유사도 산출 모듈 및 상기 가상 폰트 정보 중 가장 높은 유사도를 가진 상기 가상 폰트 정보를 기반으로 상기 폰트 정보를 생성하는 폰트 정보 분석 모듈을 포함할 수 있다.
또한, 상기 폰트 생성 시스템은, 상기 폰트 정보를 2차원 좌표평면상에 위치시키고, 상기 폰트 정보의 최외각 점 정보를 추출하여 스케일 정보를 생성하며, 상기 스케일 정보를 기설정된 스케일 영역을 기반으로 변환하는 스케일 변환부를 더 포함할 수 있다.
여기서, 상기 스케일 변환부는, 상기 폰트 정보에 2차원 좌표평면을 적용하고 하나 이상의 최외각 점을 추출하여 최외각 점 정보를 생성하는 최외각 점 추출 모듈, 상기 최외각 점 정보로부터, 수직, 수평으로 연장되는 연장선을 그어 각각의 연장선이 겹치는 부분의 접합 점 정보를 추출하고, 상기 접합 점 정보 중 최외각 접합 점 정보로 형성된 스케일 정보를 생성하는 스케일 생성 모듈 및 상기 스케일 정보를 상기 기설정된 스케일 영역에 맞게 비율을 조절하는 스케일 조절 모듈을 포함할 수 있다.
또한, 본 발명의 실시 예에 따른 폰트 생성 시스템을 이용한 폰트 생성 방법은, 데이터 베이스부에서 다수의 문자 데이터 정보를 저장하는 문자 데이터 정보 저장단계, 입력부에서 이미지 정보를 입력 받아 문자열 이미지 정보를 생성하는 이미지 정보 생성단계, 전처리부에서 상기 문자열 이미지 정보로부터 개별 문자 정보를 추출하고 문자 패턴을 학습하여 문자 패턴 정보를 생성하는 전처리단계, 분석부에서 상기 문자 패턴 정보를 상기 문자 데이터 정보와 비교하여 스타일 전이 방식을 통해 상기 문자 패턴 정보를 분석하여 폰트 정보를 생성하는 분석단계, 확인부에서 상기 폰트 정보를 사용자에게 표시하고 파일 변환 여부를 확인하는 변환 여부 확인단계, 상기 변환 여부 확인단계에서 파일 변환을 입력 받지 않을 경우, 상기 이미지 정보 생성단계로 복귀하여 상기 이미지 정보를 재입력 받는 이미지 정보 재입력단계 및 상기 변환 여부 확인단계에서 파일 변환을 입력 받을 경우, 출력부에서 상기 폰트 정보를 폰트 파일로 변환하여 출력하는 폰트 출력단계를 포함할 수 있다.
또한, 상기 전처리단계는, 이미지 변환 모듈에서 상기 문자열 이미지 정보를 단색 음영을 적용하여 단색 문자열 정보로 변환하는 이미지 변환단계, 문자 인식 모듈에서 상기 단색 문자열 정보의 문자에 대한 영역을 인식하여 문자 정보를 추출하는 문자 정보 추출단계, 개별 문자 추출 모듈에서 상기 문자 정보의 테두리를 팽창시켜 개별 문자에 대한 인식도를 높이고, 상기 개별 문자를 그룹화하여 개별 문자 정보를 추출하는 개별 문자 정보 추출단계, 잡영 제거 모듈에서 상기 개별 문자 정보의 테두리를 침식시켜 상기 개별 문자 정보의 끊어진 점이 있는 선을 제거하는 잡영 제거단계 및 패턴 학습 모듈에서 상기 개별 문자 정보의 테두리를 축소시키고, 테두리를 따라 문자 패턴을 학습하여 상기 문자 패턴 정보를 생성하는 문자 패턴 학습단계를 포함할 수 있다.
또한, 상기 분석단계는, 가상 폰트 생성 모듈에서 상기 문자 패턴 정보에 상기 문자 데이터 정보를 적용하여 다수의 가상 폰트 정보를 생성하는 가상 폰트 생성 단계, 폰트 유사도 산출 모듈에서 상기 가상 폰트 정보와 상기 문자 패턴 정보를 비교하여 유사도를 산출하는 폰트 유사도 산출단계 및 폰트 정보 분석 모듈에서 상기 가상 폰트 정보 중 가장 높은 유사도를 가진 상기 가상 폰트 정보를 기반으로 상기 폰트 정보를 생성하는 폰트 정보 생성단계를 포함할 수 있다.
또한, 상기 변환 여부 확인단계 이전에, 스케일 변환부에서 상기 폰트 정보를 2차원 좌표평면상에 위치시키고, 상기 폰트 정보의 최외각 점 정보를 추출하여 스케일 정보를 생성하며, 상기 스케일 정보를 기설정된 스케일 영역을 기반으로 변환하는 스케일 변환단계를 더 포함할 수 있다.
여기서, 상기 스케일 변환단계는, 최외각 점 추출 모듈에서 상기 폰트 정보에 2차원 좌표평면을 적용하고 하나 이상의 최외각 점을 추출하여 최외각 점 정보를 생성하는 최외각 점 추출단계, 스케일 생성 모듈에서 상기 최외각 점 정보로부터, 수직, 수평으로 연장되는 연장선을 그어 각각의 연장선이 겹치는 부분의 접합 점 정보를 추출하고, 상기 접합 점 정보 중 최외각 접합 점 정보로 형성된 스케일 정보를 생성하는 스케일 생성단계 및 스케일 조절 모듈에서 상기 스케일 정보를 상기 기설정된 스케일 영역에 맞게 비율을 조절하는 스케일 조절단계를 포함할 수 있다.
본 발명의 실시 예에 따른 폰트 생성 시스템 및 이를 이용한 폰트 생성 방법은, 이미지 정보 안의 고유의 폰트를 닮은 개인 맞춤형 폰트를 쉽게 제작할 수 있다.
또한, 일부분의 글자를 입력하는 경우에도 전체 글자를 포함하는 폰트를 생성할 수 있다.
또한, 기저장된 다수의 문자 데이터 정보를 제공함으로써 사용자가 자신만의 폰트를 생성하는데 완성도를 올릴 수 있고, 최소한의 자필 글자를 입력 받음으로써 발생할 수 있는 폰트 디자인의 부족을 충족시킬 수 있다.
또한, 폰트 제작을 위한 노동력, 비용 및 시간을 절감할 수 있다.
또한, 폰트 크기를 일관화하여 폰트의 일부분이 누락되거나, 다른 폰트에 비해 크기가 작게 형성되는 것을 방지할 수 있다.
도 1은 본 발명의 실시 예에 따른 폰트 생성 시스템의 구성을 도시한 블록도이다.
도 2는 도 1의 전처리부의 구성을 도시한 블록도이다.
도 3은 도 1의 분석부의 구성을 도시한 블록도이다.
도 4는 본 발명의 실시 예에 따른 폰트 생성 시스템에 스케일 변환부가 추가된 것을 도시한 블록도이다.
도 5는 도 4의 스케일 변환부의 구성을 도시한 블록도이다.
도 6의 (a) 내지 (h)는 폰트 정보가 자음일 경우, 도 5를 이용한 스케일 변환을 도시한 예시도이다.
도 7의 (a)는 도 6의 스케일 변환 전 스케일을 도시한 예시도이고, (b)는 도 6의 스케일 변환 후 스케일을 도시한 예시도이다.
도 8의 (a) 내지 (h)는 폰트 정보가 모음일 경우, 도 5를 이용한 스케일 변환을 도시한 예시도이다.
도 9의 (a)는 도 8의 스케일 변환 전 스케일을 도시한 예시도이고, (b)는 도 8의 스케일 변환 후 스케일을 도시한 예시도이다.
도 10은 본 발명의 실시 예에 따른 폰트 생성 시스템을 이용한 폰트 생성 방법을 도시한 흐름도이다.
도 11은 도 10의 전처리단계를 도시한 흐름도이다.
도 12는 도 10의 분석단계를 도시한 흐름도이다.
도 13은 본 발명의 실시 예에 따른 폰트 생성 시스템을 이용한 폰트 생성 방법에 스케일 변환단계가 추가된 것을 도시한 흐름도이다.
도 14는 도 13의 스케일 변환단계를 도시한 흐름도이다.
이하, 도면을 참조한 본 발명의 설명은 특정한 실시 형태에 대해 한정되지 않으며, 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있다. 또한, 이하에서 설명하는 내용은 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
이하의 설명에서 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용되는 용어로서, 그 자체에 의미가 한정되지 아니하며, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 명세서 전체에 걸쳐 사용되는 동일한 참조번호는 동일한 구성요소를 나타낸다.
본 발명에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 이하에서 기재되는 "포함하다", "구비하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것으로 해석되어야 하며, 하나 또는 그 이상의 다른 특징들이나, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 갖는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
이하, 도 1 내지 도 14를 참조로 하여 본 발명의 실시 예에 따른 폰트 생성 시스템 및 이를 이용한 폰트 생성 방법을 상세히 설명하기로 한다.
본 발명의 실시 예에 따른 폰트 생성 시스템에 대하여 첨부한 도 1 내지 도 9를 기초로 이하에서 설명하기로 한다.
도 1은 본 발명의 실시 예에 따른 폰트 생성 시스템의 구성을 도시한 블록도이고, 도 2는 도 1의 전처리부의 구성을 도시한 블록도이며, 도 3은 도 1의 분석부의 구성을 도시한 블록도이다.
본 발명의 실시 예에 따른 폰트 생성 시스템(1)은, 사용자로부터 이미지 정보를 입력 받아 이미지 정보 내의 문자를 인식하고 문자를 폰트로 변환하는 시스템으로, 도 1을 참조하면, 데이터 베이스부(100), 입력부(200), 전처리부(300), 분석부(400), 확인부(500) 및 출력부(600)를 포함할 수 있다.
먼저, 데이터 베이스부(100)는, 다수의 문자 데이터 정보를 저장할 수 있다.
구체적으로, 데이터 베이스부(100)는 사용자에 의해 구축될 수 있으며 자체 메모리 또는 외부의 데이터 베이스와 연동할 수 있다.
여기서, 문자 데이터 정보는 기존에 사용되고 있는 다양한 스타일의 폰트를 의미하는 것이다.
이때, 문자 데이터 정보는, 각 스타일의 문자 데이터 정보 당 약 2000 내지 3000장의 이미지를 저장할 수 있다.
또한, 문자 데이터 정보는, 이미지 내의 문자에 경계박스를 설정하여 문자만을 추출하는 라벨링 과정을 거쳐 저장된 이미지일 수도 있다.
또한, 데이터 베이스부(100)는, 출력부(600)에서 변환된 폰트 파일을 추가로 저장하여 지속적으로 문자 데이터 정보가 업데이트 되도록 할 수 있다.
이에, 데이터 베이스부(100)는, 저장되는 문자 데이터 정보가 많을수록 문자 패턴 정보 분석의 정확도를 높일 수 있다.
다음으로, 입력부(200)는, 이미지 정보를 입력 받아 문자열 이미지 정보를 생성할 수 있다.
여기서, 이미지 정보는, 사용자로부터 입력 받은 촬상장치로 촬영된 이미지 정보일 수도 있고, 사용자 단말을 통해 기저장된 이미지 정보일 수도 있으며, 사용자 단말을 통해 입력 받은 사용자의 서체를 이미지 정보로 변환한 이미지 정보일 수도 있다.
또한, 촬상장치는, 사용자 단말과 연결된 스캐너, 디지털 카메라, CAM 카메라 등을 포함할 수 있다.
또한, 사용자 단말은, 스마트폰, 태블릿, PC 등을 포함할 수 있다.
구체적으로, 입력부(200)는, 문자 전체의 모습이 나타난 이미지 정보를 입력 받아 이미지 정보 내에 존재하는 문자를 인식하여 문자열 이미지 정보를 생성할 수 있다.
더욱 구체적으로, 입력부(200)는, 이미지 정보의 밝기 대비율을 높여, 문자 색과 배경 색의 대비를 높이고, 임계값을 기준으로 픽셀들을 그룹화하며, 각 그룹을 0과 1로 분류하는 2진화 작업을 수행하여 문자를 따로 분류함으로써, 문자열 이미지 정보를 생성할 수 있다.
또한, 입력부(200)는, 문자열 이미지 정보의 각도를 측정하여, 문자열 이미지 정보가 수평이 되도록 회전시킬 수 있다.
이에, 입력부(200)는, 문자열 인식 효율을 높일 수 있다.
다음으로, 전처리부(300)는, 입력부(200)로부터 생성된 문자열 이미지 정보로부터 개별 문자 정보를 추출하고 문자 패턴을 학습하여 문자 패턴 정보를 생성할 수 있다.
이때, 전처리부(300)는, OpenCV 라이브러리를 사용할 수 있다.
구체적으로, 도 2를 참조하면, 전처리부(300)는, 이미지 변환 모듈(310), 문자 인식 모듈(320), 개별 문자 추출 모듈(330), 잡영 제거 모듈(340) 및 문자 패턴 학습 모듈(350)을 포함할 수 있다.
이미지 변환 모듈(310)은, 입력부(200)로부터 생성된 문자열 이미지 정보에 단색 음영을 적용하여 단색 문자열 정보로 변환할 수 있다.
이때, 이미지 변환 모듈(310)은, 문자열 이미지가 대체로 검정색 문자에 하얀색 배경을 이루고 있기 때문에, 회색조 음영을 적용하는 것이 바람직하나 이에 한정하지 않는다.
이에, 전처리부(300)는, 개별 문자 정보 추출 시, 이미지 변환 모듈(310)을 통해 단색 문자열 정보로 변환함으로써, 문자와 문자 사이의 간격을 뚜렷하게 구분하여 문자 인식 정확도를 높일 수 있다.
문자 인식 모듈(320)은, 이미지 변환 모듈(310)로부터 변환된 단색 문자열 정보에서 문자에 대한 영역을 인식하여 문자 정보를 추출할 수 있다.
구체적으로, 문자 인식 모듈(320)은, 단색 문자열 정보에서 픽셀 임계값을 기준으로, 임계값 이상의 픽셀 값을 가진 픽셀과 임계값 미만의 픽셀 값을 가진 픽셀의 연속된 점을 검출할 수 있다.
여기서, 임계값 이상의 픽셀 값은 하얀색으로 인식되며, 임계값 미만의 픽셀 값은 검정색으로 인식될 수 있다.
이때, 임계값은, 127인 것이 바람직하나, 0 내지 255 사이에서 사용자의 요구에 따라 설정될 수 있다.
이에, 문자 인식 모듈(320)은, 검정색으로 인식된 문자 정보의 테두리를 인식할 수 있다.
개별 문자 추출 모듈(330)은, 문자 인식 모듈(320)에서 추출된 문자 정보의 테두리를 팽창시켜 개별 문자에 대한 인식도를 높이고, 개별 문자를 그룹화하여 개별 문자 정보를 추출할 수 있다.
구체적으로, 개별 문자 추출 모듈(330)은, 앞서 문자 인식 모듈(320)에서 검출된 임계값 미만의 픽셀 값을 가진 검정색으로 인식된 픽셀의 연속된 점을 팽창시킬 수 있다.
이때, 개별 문자 추출 모듈(330)은, 기설정된 범위까지 문자 정보의 테두리를 팽창시킬 수 있으며, 기존의 문자 정보의 테두리가 기설정된 범위보다 테두리 두께가 크거나 같을 경우, 팽창시키지 않을 수도 있다.
또한, 개별 문자 추출 모듈(330)은, 각 픽셀들이 겹치지 않도록 문자 정보의 테두리를 팽창시키는 것이 바람직하다.
이에, 개별 문자 추출 모듈(330)은, 문자 정보 테두리를 더욱 뚜렷하게 하여 인식도를 높일 수 있다.
또한, 개별 문자 추출 모듈(330)은, 문자 정보의 테두리가 팽창된 상태에서, 픽셀의 연속된 점을 그룹화하여 개별 문자 정보를 추출할 수 있다.
구체적으로, 개별 문자 추출 모듈(330)은, 문자 정보의 테두리가 끊기는 부분에서 문자 정보를 하나의 그룹으로 그룹화 할 수 있다.
이때, 개별 문자 추출 모듈(330)은, 하나의 그룹을 개별 문자 정보로 하여 추출할 수 있다.
잡영 제거 모듈(340)은, 개별 문자 추출 모듈(330)에서 추출된 개별 문자 정보의 테두리를 침식시켜 상기 개별 문자 정보의 끊어진 점이 있는 선을 제거할 수 있다.
구체적으로, 잡영 제거 모듈(340)은, 개별 문자 정보의 테두리에서 70% 이상의 빈 공간이 형성되어 있는 개별 문자 정보의 테두리를 잡영으로 판단하고 침식시켜, 제거할 수 있다.
이에, 잡영 제거 모듈(340)은, 문자 판단 정확도를 높일 수 있다.
문자 패턴 학습 모듈(350)은, 개별 문자 추출 모듈(330)에서 추출되고, 잡영 제거 모듈(340)을 통해 잡영이 제거된 개별 문자 정보의 테두리를 축소시키고, 테두리를 따라 문자 패턴을 학습하여 문자 패턴 정보를 생성할 수 있다.
구체적으로, 문자 패턴 학습 모듈(350)은, 개별 문자 정보를 개별 문자 추출 모듈(330)에서 팽창시키기 전 테두리 두께로 복귀시킬 수 있다.
이는, 팽창시킨 테두리로 문자 패턴 정보를 생성할 경우, 기존의 이미지 정보와 상이한 폰트가 출력되는 것을 방지하기 위함이다.
또한, 문자 패턴 학습 모듈(350)은, 문자 패턴 정보를 딥러닝, 머신러닝 등에 의해 학습할 수 있다.
구체적으로, 문자 패턴 학습 모듈(350)은, 문자 패턴 정보를 조합, 이동, 회전, 대칭, 확대 및 축소하여 이미지 정보에서 입력되지 않은 부족한 문자 패턴 정보를 생성하여 최대 11,172개의 문자 패턴 정보를 생성할 수 있다.
예를 들어, 'ㅜ'를 상, 하 대칭하여 'ㅗ'를 생성하거나, 회전하여 'ㅏ'를 생성할 수 있다.
또한, 'ㅂ'을 축소하여 받침에 들어가는 'ㅂ'을 생성할 수 있다.
또한, 문자 패턴 학습 모듈(350)은, 'ㅊ', 'ㅎ' 등과 같이 하나의 문자이지만, 개별 문자 정보가 떨어져 있는 문자의 경우, 하나의 개별 문자 정보로 조합하여 인식할 수 있다.
구체적으로, 문자 패턴 학습 모듈(350)은, 개별 문자 정보의 방향성과 크기를 기반으로, 하나의 개별 문자 정보로 조합하여 인식할 수 있다.
예를 들면, 문자 패턴 학습 모듈(350)은, 'ㅊ'의 경우, 'ㅈ'과 'ㅈ' 상방의 'ㅈ'보다 작은 크기의'ㅡ'를 'ㅈ'과 하나로 판단하여 'ㅊ'으로 인식할 수 있다.
이에, 폰트 생성 시스템(1)은, 일부분의 글자를 입력하는 경우에도 전체 글자를 생성할 수 있어, 이미지 정보를 입력하는 노동력 및 시간을 감소시킬 수 있다.
또한, 폰트 생성 시스템(1)은, 폰트 완성의 완성도를 올릴 수 있고, 최소한의 자필 글자를 입력 받음으로써 발생할 수 있는 폰트 디자인의 부족을 충족시킬 수 있다.
다음으로, 분석부(400)는, 전처리부(300)에서 생성된 문자 패턴 정보를 문자 데이터 정보와 비교하여 스타일 전이 방식을 통해 문자 패턴 정보를 분석하고 폰트 정보를 생성할 수 있다.
구체적으로, 분석부(400)는, 문자 패턴 학습 모듈(350)에서 학습한 문자 패턴 정보에, 데이터 베이스부(100)에 기저장된 문자 데이터 정보를 적용하여 가상 폰트 정보를 생성하고, 유사도를 산출함으로써, 폰트 정보를 생성할 수 있다.
이때, 분석부(400)는, GAN(Generative Adversarial Network)를 사용하여 가상 폰트 정보를 생성할 수 있다.
더욱 구체적으로, 도 3을 참조하면, 분석부(400)는, 가상 폰트 생성 모듈(410), 폰트 유사도 산출 모듈(420) 및 폰트 정보 분석 모듈(430)을 포함할 수 있다.
가상 폰트 생성 모듈(410)은, 전처리부(300)에서 생성된 문자 패턴 정보에 데이터 베이스부(100)에 저장된 다수의 문자 데이터 정보를 적용하여 다수의 가상 폰트 정보를 생성할 수 있다.
구체적으로, 가상 폰트 생성 모듈(410)은, 문자 패턴 정보에 기존에 사용되고 있는 다양한 스타일의 폰트를 의미하는 문자 데이터 정보를 적용하여 가상 폰트 정보를 생성할 수 있다.
이때, 문자 패턴 정보는, 하나의 자음 또는 모음이나 자음, 모음이 조합되어 이루어진 글자가 될 수도 있다.
또한, 가상 폰트 정보의 크기는 문자 패턴 정보와 동일하게 생성될 수 있다.
예를 들면, 문자 패턴 정보가 '가'이고, 문자 데이터 정보가 고딕체라면, '가'에 고딕체를 적용하여 가상 폰트 정보를 생성하는 것이다.
유사도 산출 모듈(420)은, 가상 폰트 생성 모듈(410)에서 생성된 가상 폰트 정보와 전처리부(300)에서 생성된 문자 패턴 정보를 비교하여 유사도를 산출할 수 있다.
구체적으로, 유사도 산출 모듈(420)은, 하나의 문자 패턴 정보와 해당 문자 패턴 정보를 통해 생성된 가상 폰트 정보를 겹쳐, 겹쳐지는 영역을 판단하여 유사도를 산출할 수 있다.
폰트 정보 분석 모듈(430)은, 가상 폰트 생성 모듈(410)에서 생성된 가상 폰트 정보 중 유사도 산출 모듈(420)을 통해 산출된 유사도가 가장 높은 가상 폰트 정보를 기반으로 폰트 정보를 생성할 수 있다.
구체적으로, 폰트 정보 분석 모듈(430)은, 가장 높은 유사도를 가진 가상 폰트 정보와 문자 패턴 정보의 차이점을 추출하고, 이를 가장 높은 유사도를 가진 가상 폰트 정보에 반영하여 변형할 수 있다.
이에, 폰트 생성 시스템(1)은, 폰트를 생성하는 시간을 단축시킬 수 있다.
다음으로, 확인부(500)는, 분석부(400)에서 생성된 폰트 정보를 사용자에게 표시하고 파일 변환 여부를 입력 받을 수 있다.
이때, 폰트 정보는 스마트폰, 태블릿, PC 등의 사용자 단말에 표시될 수 있다.
이에, 사용자는, 폰트 정보를 확인하고, 사용자가 원하는 형태의 폰트가 아닐 경우, 폰트 파일로 변환하는 시간을 낭비하지 않고 이미지 정보를 재입력하여 폰트를 재생성할 수 있다.
다음으로, 출력부(500)는, 폰트 정보를 폰트 파일로 변환하여 출력할 수 있다.
구체적으로, 출력부(500)는 깨짐 현상 및 계단 현상을 방지하기 위해 폰트 정보를 벡터 이미지로 변환하고, Outline Font인 트루타입(TTF), 오픈타입(OTF)의 폰트 파일로 변환할 수 있다.
이에, 폰트 생성 시스템(1)은, 사용자만의 고유의 폰트를 생성하여 제공할 수 있다.
도 4는 본 발명의 실시 예에 따른 폰트 생성 시스템에 스케일 변환부가 추가된 것을 도시한 블록도이고, 도 5는 도 4의 스케일 변환부의 구성을 도시한 블록도이며, 도 6의 (a) 내지 (h)는 폰트 정보가 자음일 경우, 도 5를 이용한 스케일 변환을 도시한 예시도이고, 도 7의 (a)는 도 6의 스케일 변환 전 스케일을 도시한 예시도이며, (b)는 도 6의 스케일 변환 후 스케일을 도시한 예시도이고, 도 8의 (a) 내지 (h)는 폰트 정보가 모음일 경우, 도 5를 이용한 스케일 변환을 도시한 예시도이며, 도 9의 (a)는 도 8의 스케일 변환 전 스케일을 도시한 예시도이고, (b)는 도 8의 스케일 변환 후 스케일을 도시한 예시도이다.
도 4를 참조하면, 본 발명의 실시 예에 따른 폰트 생성 시스템(1)은, 스케일 변환부(700)를 더 포함할 수 있다.
스케일 변환부(700)는, 분석부(400)에서 생성된 폰트 정보를 2차원 좌표평면상에 위치시키고, 폰트 정보의 최외각 점 정보(OP)를 추출하여 스케일 정보(S)를 생성하며, 스케일 정보(S)를 기설정된 스케일 영역(PS)을 기반으로 변환할 수 있다.
이때, 기설정된 스케일 영역(PS)은, 정사각형인 것이 바람직하나 이에 한정하지 않는다.
또한, 기설정된 스케일 영역(PS)은, 자음, 모음, 홑받침, 겹받침 등 문자의 쓰임에 따라 상이하게 설정될 수 있다.
구체적으로, 도 5를 참조하면, 스케일 변환부(700)는, 최외각 점 추출 모듈(710), 스케일 생성 모듈(720) 및 스케일 조절 모듈(730)을 포함할 수 있다.
최외각 점 추출 모듈(710)은, 분석부(400)에서 생성된 폰트 정보에 2차원 좌표평면을 적용하고 하나 이상의 최외각 점을 추출하여 최외각 점 정보(OP)를 생성할 수 있다.
구체적으로, 최외각 점 추출 모듈(710)은, 좌표평면에서 폰트 정보의 상, 하, 좌, 우의 최외각에 있는 점을 인식할 수 있다.
이때, 최외각 점 추출 모듈(710)은, 하나의 점이 아닌 여러 개의 연속되는 점이 최외각 점으로 추출되었을 경우, 동일선상에 있는 점들 중 하나의 점만 최외각 점 정보(OP)로 추출할 수 있다.
여기서, 최외각 점 추출 모듈(710)은, 동일선상에 여러 개의 점들 중 중앙에 위치하는 하나의 점을 최외각 점 정보(OP)로 추출하는 것이 바람직하다.
스케일 생성 모듈(720)은, 최외각 점 추출 모듈(710)에서 생성된 최외각 점 정보(OP)로부터, 수직, 수평으로 연장되는 연장선(L)을 그어 각각의 연장선(L)이 겹치는 부분의 접합 점 정보(JP)를 추출할 수 있다.
이때, 둘 이상의 연장선(L)이 완전히 겹쳐 하나의 점이 아닌 여러 개의 연속되는 점이 접합 점 정보(JP)로 추출될 경우, 연장선(L) 위의 최외각 점 정보(OP)를 접합 점 정보(JP)로 추출할 수 있다.
이후, 접합 점 정보(JP) 중 최외각 접합 점 정보(OJP)로 형성된 스케일 정보(S)를 생성할 수 있다.
이때, 스케일 정보(S)는, 각각의 최외각 접함 점 정보(OJP)를 꼭짓점으로 하여, 각각의 최외각 접함 점 정보(OJP)가 이어진 다각형의 형태로 형성될 수 있다.
이에, 스케일 정보(S)는, 4개의 모서리를 형성할 수 있다.
또한, 스케일 정보(S)는, 폰트 정보마다 상이하게 형성될 수 있다.
스케일 조절 모듈(730)은, 스케일 생성 모듈(720)에서 생성된 스케일 정보(S)를 기설정된 스케일 영역(PS)에 맞게 비율을 조절할 수 있다.
이때, 스케일 조절 모듈(730)은, 스케일 정보(S)를 기설정된 스케일 영역(PS)에 맞닿게 조절될 수 있다.
구체적으로, 스케일 조절 모듈(730)은, 스케일 정보(S)의 하나 이상의 모서리 중 어느 하나 이상의 기설정된 스케일 영역(PS)에 맞닿을 때까지 스케일 정보(S)를 조절할 수 있다.
이때, 스케일 정보(S)는 폰트 정보의 형태가 변형되는 것을 방지하기 위해 크기가 비율을 유지하며 조절되는 것이 바람직하다.
도 6의 (a) 내지 (j) 및 도 7의 (a) 및 (b)를 참조하여, 스케일 변환부(700)의 자음에 대한 스케일 조절을 설명하기로 한다.
먼저, 도 6의 (a)는, 폰트 정보 중 'ㅎ'을 예시로 나타낸 것이다.
다음으로, 도 6의 (b)는, 최외각 점 추출 모듈(710)이 폰트 정보 'ㅎ'에 2차원 좌표평면을 적용한 것이다.
이때, 폰트 정보는, 2차원 좌표평면의 중앙에 위치하는 것이 바람직하나, 이에 한정하지 않는다.
다음으로, 도 6의 (c)는, 최외각 점 추출 모듈(710)이 폰트 정보 'ㅎ'의 최외각 점을 추출하여 최외각 점 정보(OP)를 표시한 것이다.
다음으로, 도 6의 (d)는, 스케일 생성 모듈(720)이 최외각 점 정보(OP)로부터, 수직, 수평으로 연장되는 연장선(L)을 그은 것이다.
다음으로, 도 6의 (e)는, 스케일 생성 모듈(720)이 각각의 연장선(L)이 겹치는 부분의 접합 점 정보(JP)를 추출하여 생성하고, 각각의 접합 점 정보(JP) 중 최외각 접합 점 정보(OJP)를 추출하여 생성한 것이다.
다음으로, 도 6의 (f)는, 스케일 생성 모듈(720)이 최외각 접합 점 정보(OJP)로 형성된 스케일 정보(S)를 확인할 수 있다.
다음으로, 도 6의 (g)는, 스케일 조절 모듈(730)이 기설정된 스케일 영역(PS)에 스케일 정보(S)를 적용한 것이다.
이때, 스케일 정보(S)는, 기설정된 스케일 영역(PS)의 중앙에 위치하는 것이 바람직하다.
다음으로, 도 6의 (h)는, 스케일 조절 모듈(730)이 기설정된 스케일 영역(PS)에 맞게 스케일 정보(S)를 조절하여 스케일 정보(S)의 4개의 모서리 중 좌, 우의 모서리가 맞닿게 조절된 것이다.
이때, 스케일 정보(S)에 따라 맞닿는 모서리는 달라질 수 있다.
이에, 도 7의 (a) 및 (b)를 참조하면, 도 7의 (a) 상태, 즉 스케일 조절 전 폰트 정보 'ㅎ'의 상태와 (b) 상태, 즉 스케일 조절 후 폰트 정보 'ㅎ'의 상태를 비교하였을 때, 스케일이 조절된 것을 확인할 수 있다.
도 8의 (a) 내지 (j) 및 도 9의 (a) 및 (b)를 참조하여, 스케일 변환부(700)의 모음에 대한 스케일 조절을 설명하기로 한다.
먼저, 도 8의 (a)는, 폰트 정보 중 'ㅏ'를 예시로 나타낸 것이다.
다음으로, 도 8의 (b)는, 최외각 점 추출 모듈(710)이 폰트 정보 'ㅏ'에 2차원 좌표평면을 적용한 것이다.
이때, 폰트 정보는, 2차원 좌표평면의 중앙에 위치하는 것이 바람직하나, 이에 한정하지 않는다.
다음으로, 도 8의 (c)는, 최외각 점 추출 모듈(710)이 폰트 정보 'ㅏ'의 최외각 점을 추출하여 최외각 점 정보(OP)를 표시한 것이다.
다음으로, 도 8의 (d)는, 스케일 생성 모듈(720)이 최외각 점 정보(OP)로부터, 수직, 수평으로 연장되는 연장선(L)을 그은 것이다.
다음으로, 도 8의 (e)는, 스케일 생성 모듈(720)이 각각의 연장선(L)이 겹치는 부분의 접합 점 정보(JP)를 추출하여 생성하고, 각각의 접합 점 정보(JP) 중 최외각 접합 점 정보(OJP)를 추출하여 생성한 것이다.
다음으로, 도 8의 (f)는, 스케일 생성 모듈(720)이 최외각 접합 점 정보(OJP)로 형성된 스케일 정보(S)를 확인할 수 있다.
다음으로, 도 8의 (g)는, 스케일 조절 모듈(730)이 기설정된 스케일 영역(PS)에 스케일 정보(S)를 적용한 것이다.
이때, 스케일 정보(S)는, 기설정된 스케일 영역(PS)의 중앙에 위치하는 것이 바람직하다.
다음으로, 도 8의 (h)는, 스케일 조절 모듈(730)이 기설정된 스케일 영역(PS)에 맞게 스케일 정보(S)를 조절하여 스케일 정보(S)의 4개의 모서리 중 좌, 우의 모서리가 맞닿게 조절된 것이다.
이때, 스케일 정보(S)에 따라 맞닿는 모서리는 달라질 수 있다.
이에, 도 9의 (a) 및 (b)를 참조하면, 도 9의 (a) 상태, 즉 스케일 조절 전 폰트 정보 'ㅏ'의 상태와 (b) 상태, 즉 스케일 조절 후 폰트 정보 'ㅏ'의 상태를 비교하였을 때, 스케일이 조절된 것을 확인할 수 있다.
따라서, 폰트 생성 시스템(1)은, 폰트 크기를 일관화하여 폰트의 일부분이 누락되거나, 다른 폰트에 비해 크기가 작게 형성되는 것을 방지할 수 있다.
다음으로, 본 발명의 실시 예에 따른 폰트 생성 시스템을 이용한 폰트 생성 방법(이하, '폰트 생성 방법'이라 함)에 대하여 첨부한 도 10 내지 도 14를 기초로 이하에서 설명하기로 한다.
도 10은 본 발명의 실시 예에 따른 폰트 생성 시스템을 이용한 폰트 생성 방법을 도시한 흐름도이고, 도 11은 도 10의 전처리단계를 도시한 흐름도이며, 도 12는 도 10의 분석단계를 도시한 흐름도이다.
본 발명의 실시 예에 따른 폰트 생성 방법은 폰트 생성 시스템(1)을 이용한 폰트 생성 방법으로, 도 10을 참조하면, 문자 데이터 정보 저장단계(S10), 이미지 정보 생성단계(S20), 전처리단계(S30), 분석단계(S40), 변환 여부 확인단계(S50), 재입력단계(S60) 및 폰트 출력단계(S70)를 포함할 수 있다.
이때, 폰트 생성 시스템(1)은, 상기에서 설명한 폰트 생성 시스템(1)과 동일하게 형성되는 것이다.
먼저, 문자 데이터 정보 저장단계(S10)는, 데이터 베이스부(100)에서 다수의 문자 데이터 정보를 저장하는 단계이다.
구체적으로, 문자 데이터 정보 저장단계(S10)는, 사용자에 의해 데이터 베이스부(100)의 자체 메모리 또는 외부의 데이터 베이스와 연동하여 문자 데이터 정보를 저장할 수 있다.
여기서, 문자 데이터 정보는 기존에 사용되고 있는 다양한 스타일의 폰트를 의미하는 것이다.
이때, 문자 데이터 정보 저장단계(S10)는, 데이터 베이스부(100)에 각 스타일의 문자 데이터 정보 당 약 2000 내지 3000장의 이미지를 저장할 수 있다.
또한, 문자 데이터 정보 저장단계(S10)는, 이미지 내의 문자에 경계박스를 설정하여 문자만을 추출하는 라벨링 과정을 적용하여 이미지를 저장할 수도 있다.
또한, 문자 데이터 정보 저장단계(S10)는, 출력단계(S70)에서 변환된 폰트 파일을 추가로 저장하여 지속적으로 데이터 베이스부(100) 를 업데이트 할 수 있다.
이에, 문자 데이터 정보 저장단계(S10)는, 저장하는 문자 데이터 정보가 많을수록 문자 패턴 정보 분석의 정확도를 높일 수 있다.
다음으로, 이미지 정보 생성단계(S20)는, 입력부(200)에서 이미지 정보를 입력 받아 문자열 이미지 정보를 생성하는 단계이다.
여기서, 이미지 정보는, 사용자로부터 입력 받은 촬상장치로 촬영된 이미지 정보일 수도 있고, 사용자 단말을 통해 기저장된 이미지 정보일 수도 있으며, 사용자 단말을 통해 입력 받은 사용자의 서체를 이미지 정보로 변환한 이미지 정보일 수도 있다.
또한, 촬상장치는, 사용자 단말과 연결된 스캐너, 디지털 카메라, CAM 카메라 등을 포함할 수 있다.
또한, 사용자 단말은, 스마트폰, 태블릿, PC 등을 포함할 수 있다.
구체적으로, 이미지 정보 생성단계(S20)는, 문자 전체의 모습이 나타난 이미지 정보를 입력 받아 이미지 정보 내에 존재하는 문자를 인식하여 문자열 이미지 정보를 생성하는 단계이다.
더욱 구체적으로, 이미지 정보 생성단계(S20)는, 이미지 정보의 밝기 대비율을 높여, 문자 색과 배경 색의 대비를 높이고, 임계값을 기준으로 픽셀들을 그룹화하며, 각 그룹을 0과 1로 분류하는 2진화 작업을 수행하여 문자를 따로 분류함으로써, 문자열 이미지 정보를 생성하는 단계이다.
또한, 이미지 정보 생성단계(S20)는, 문자열 이미지 정보의 각도를 측정하여, 문자열 이미지 정보가 수평이 되도록 회전시킬 수 있다.
이에, 이미지 정보 생성단계(S20)를 통해 문자열 인식 효율을 높일 수 있다.
다음으로, 전처리단계(S30)는, 전처리부(300)에서 이미지 정보 생성단계(S20)를 통해 생성된 문자열 이미지 정보로부터 개별 문자 정보를 추출하고 문자 패턴을 학습하여 문자 패턴 정보를 생성하는 단계이다.
이때, 전처리단계(S30)에서는 OpenCV 라이브러리가 사용될 수 있다.
구체적으로, 도 11을 참조하면, 전처리단계(S30)는, 이미지 변환단계(S301), 문자 정보 추출단계(S302), 개별 문자 정보 추출단계(S303), 잡영 제거단계(S304) 및 문자 패턴 학습단계(S305)를 포함할 수 있다.
이미지 변환단계(S301)는, 이미지 변환 모듈(310)에서 이미지 정보 생성단계(S20)를 통해 생성된 문자열 이미지 정보를 단색 음영을 적용하여 단색 문자열 정보로 변환하는 단계이다.
이때, 이미지 변환단계(S301)는, 문자열 이미지가 대체로 검정색 문자에 하얀색 배경을 이루고 있기 때문에, 회색조 음영을 적용하여 단색 문자열 정보로 변환하는 것이 바람직하나 이에 한정하지 않는다.
이에, 전처리단계(S30)를 통해 개별 문자 정보 추출 시, 문자와 문자 사이의 간격을 뚜렷하게 구분하여 문자 인식 정확도를 높일 수 있다.
문자 정보 추출단계(S302)는, 문자 인식 모듈(320)에서 이미지 변환단계(S301)를 통해 변환된 단색 문자열 정보의 문자에 대한 영역을 인식하여 문자 정보를 추출하는 단계이다.
구체적으로, 문자 정보 추출단계(S302)는, 단색 문자열 정보에서 픽셀 임계값을 기준으로, 임계값 이상의 픽셀 값을 가진 픽셀과 임계값 미만의 픽셀 값을 가진 픽셀의 연속된 점을 검출하는 단계이다.
여기서, 임계값 이상의 픽셀 값은 하얀색으로 인식되며, 임계값 미만의 픽셀 값은 검정색으로 인식될 수 있다.
이때, 임계값은, 127인 것이 바람직하나, 0 내지 255 사이에서 사용자의 요구에 따라 설정될 수 있다.
이에, 문자 정보 추출단계(S302)를 통해 검정색으로 인식된 문자 정보의 테두리를 인식할 수 있다.
개별 문자 정보 추출단계(S303)는, 개별 문자 추출 모듈(330)에서 문자 정보 추출단계(S302)를 통해 추출된 문자 정보의 테두리를 팽창시켜 개별 문자에 대한 인식도를 높이고, 상기 개별 문자를 그룹화하여 개별 문자 정보를 추출하는 단계이다.
구체적으로, 개별 문자 정보 추출단계(S303)는, 앞서 문자 정보 추출단계(S302)에서 검출된 임계값 미만의 픽셀 값을 가진 검정색으로 인식된 픽셀의 연속된 점을 팽창시키는 단계이다.
이때, 개별 문자 정보 추출단계(S303)는, 기설정된 범위까지 문자 정보의 테두리를 팽창시킬 수 있으며, 기존의 문자 정보의 테두리가 기설정된 범위보다 테두리 두께가 크거나 같을 경우, 팽창시키지 않을 수도 있다.
또한, 개별 문자 정보 추출단계(S303)는, 각 픽셀들이 겹치지 않도록 문자 정보의 테두리를 팽창시키는 것이 바람직하다.
이에, 개별 문자 정보 추출단계(S303)를 통해 문자 정보 테두리를 더욱 뚜렷하게 하여 인식도를 높일 수 있다.
또한, 개별 문자 정보 추출단계(S303)는, 문자 정보의 테두리가 팽창된 상태에서, 픽셀의 연속된 점을 그룹화하여 개별 문자 정보를 추출할 수 있다.
구체적으로, 개별 문자 정보 추출단계(S303)는, 문자 정보의 테두리가 끊기는 부분에서 문자 정보를 하나의 그룹으로 그룹화 하는 단계이다.
이때, 개별 문자 정보 추출단계(S303)는, 하나의 그룹을 개별 문자 정보로 하여 추출할 수 있다.
잡영 제거단계(S304)는, 잡영 제거 모듈(340)에서 개별 문자 정보 추출단계(S303)를 통해 추출된 개별 문자 정보의 테두리를 침식시켜 개별 문자 정보의 끊어진 점이 있는 선을 제거하는 단계이다.
구체적으로, 잡영 제거단계(S304)는, 개별 문자 정보의 테두리에서 70% 이상의 빈 공간이 형성되어 있는 개별 문자 정보의 테두리를 잡영으로 판단하고 침식시켜, 제거하는 단계이다.
이에, 잡영 제거단계(S304)를 통해 문자 판단 정확도를 높일 수 있다.
문자 패턴 학습단계(S305)는, 패턴 학습 모듈(350)에서 잡영 제거단계(S304)를 통해 잡영이 제거된 개별 문자 정보의 테두리를 축소시키고, 테두리를 따라 문자 패턴을 학습하여 문자 패턴 정보를 생성하는 단계이다.
구체적으로, 문자 패턴 학습단계(S305)는, 개별 문자 정보를 개별 문자 정보 추출단계(S303)에서 팽창시키기 전 테두리 두께로 복귀시키는 단계이다.
이는, 팽창된 테두리로 문자 패턴 정보를 생성할 경우, 기존의 이미지 정보와 상이한 폰트가 출력되는 것을 방지하기 위함이다.
또한, 문자 패턴 학습단계(S305)는, 문자 패턴 정보를 딥러닝, 머신러닝 등을 이용하여 학습이 이루어지도록 진행될 수 있다.
구체적으로, 문자 패턴 학습단계(S305)는, 문자 패턴 정보를 조합, 이동, 회전, 대칭, 확대 및 축소하여 이미지 정보에서 입력되지 않은 부족한 문자 패턴 정보를 생성하여 최대 11,172개의 문자 패턴 정보를 생성하는 단계이다.
예를 들어, 'ㅜ'를 상, 하 대칭하여 'ㅗ'를 생성하거나, 회전하여 'ㅏ'를 생성할 수 있다.
또한, 'ㅂ'을 축소하여 받침에 들어가는 'ㅂ'을 생성할 수 있다.
또한, 문자 패턴 학습단계(S305)에서 패턴 학습 모듈(350)는 'ㅊ', 'ㅎ' 등과 같이 하나의 문자이지만, 개별 문자 정보가 떨어져 있는 문자의 경우, 하나의 개별 문자 정보로 조합하여 인식할 수 있다.
구체적으로, 문자 패턴 학습단계(S305)는, 개별 문자 정보의 방향성과 크기를 기반으로, 하나의 개별 문자 정보로 조합할 수 있다.
예를 들면, 'ㅊ'의 경우, 'ㅈ'과 'ㅈ' 상방의 'ㅈ'보다 작은 크기의'ㅡ'를 'ㅈ'과 하나로 판단하여 'ㅊ'으로 조합하여 인식할 수 있다.
이에, 폰트 생성 방법을 통해, 일부분의 글자를 입력하는 경우에도 전체 글자를 생성할 수 있어, 이미지 정보를 입력하는 노동력 및 시간을 감소시킬 수 있다.
또한, 폰트 생성 방법을 통해, 폰트 완성의 완성도를 올릴 수 있고, 최소한의 자필 글자를 입력 받음으로써 발생할 수 있는 폰트 디자인의 부족을 충족시킬 수 있다.
다음으로, 분석단계(S40)는, 분석부(400)에서 전처리단계(S30)를 통해 생성된 문자 패턴 정보를 문자 데이터 정보와 비교하여 스타일 전이 방식을 통해 문자 패턴 정보를 분석하여 폰트 정보를 생성하는 단계이다.
구체적으로, 분석단계(S40)는, 문자 패턴 학습단계(S305)에서 학습한 문자 패턴 정보에, 문자 데이터 정보 저장단계(S10)에서 저장한 문자 데이터 정보를 적용하여 가상 폰트 정보를 생성하고, 유사도를 산출함으로써, 폰트 정보를 생성하는 단계이다.
이때, 분석단계(S40)에서는, GAN(Generative Adversarial Network)가 사용될 수 있다.
더욱 구체적으로, 도 12를 참조하면, 분석단계(S40)는, 가상 폰트 생성단계(S401), 폰트 유사도 산출단계(S402) 및 폰트 정보 생성단계(S403)를 포함할 수 있다.
가상 폰트 생성 단계(S401)는, 가상 폰트 생성 모듈(410)에서 전처리단계(S30)를 통해 생성된 문자 패턴 정보에 문자 데이터 정보를 적용하여 다수의 가상 폰트 정보를 생성하는 단계이다.
구체적으로, 가상 폰트 생성 단계(S401)는, 문자 패턴 정보에 기존에 사용되고 있는 다양한 스타일의 폰트를 의미하는 문자 데이터 정보를 적용하여 가상 폰트 정보를 생성하는 단계이다.
이때, 문자 패턴 정보는, 하나의 자음 또는 모음이나 자음, 모음이 조합되어 이루어진 글자가 될 수도 있다.
또한, 가상 폰트 정보의 크기는 문자 패턴 정보와 동일하게 생성될 수 있다.
예를 들면, 문자 패턴 정보가 '가'이고, 문자 데이터 정보가 고딕체라면, '가'에 고딕체를 적용하여 가상 폰트 정보를 생성하는 것이다.
폰트 유사도 산출단계(S402)는, 폰트 유사도 산출 모듈(420)에서 가상 폰트 생성 단계(S401)를 통해 생성된 가상 폰트 정보와 전처리단계(S30)를 통해 생성된 문자 패턴 정보를 비교하여 유사도를 산출하는 단계이다.
구체적으로, 폰트 유사도 산출단계(S402)는, 하나의 문자 패턴 정보와 해당 문자 패턴 정보를 통해 생성된 가상 폰트 정보를 겹쳐, 겹쳐지는 영역을 판단하여 유사도를 산출하는 단계이다.
폰트 정보 생성단계(S403)은, 폰트 정보 분석 모듈(430)에서 가상 폰트 생성 단계(S401)를 통해 생성된 가상 폰트 정보 중 폰트 유사도 산출단계(S402)를 통해 산출된 유사도가 가장 높은 가상 폰트 정보를 기반으로 폰트 정보를 생성하는 단계이다.
구체적으로, 폰트 정보 생성단계(S403)는, 가장 높은 유사도를 가진 가상 폰트 정보와 문자 패턴 정보의 차이점을 추출하고, 이를 가장 높은 유사도를 가진 가상 폰트 정보에 반영하여 변형하는 단계이다.
이에, 폰트 생성 방법을 통해, 폰트를 생성하는 시간을 단축시킬 수 있다.
다음으로, 변환 여부 확인단계(S50)는, 확인부(500)에서 분석단계(S40)를 통해 생성된 폰트 정보를 사용자에게 표시하고 파일 변환 여부를 확인하는 단계이다.
구체적으로, 변환 여부 확인단계(S50)에서 폰트 정보를 스마트폰, 태블릿, PC 등의 사용자 단말에 파일 변환 여부 입력창과 함께 표시하여 파일 변환 여부를 확인하는 단계이다.
이에, 사용자는, 폰트 정보를 확인하고, 파일 변환 여부를 선택할 수 있다.
이미지 정보 재입력단계(S60)는, 변환 여부 확인단계(S50)에서 파일 변환을 입력 받지 않을 경우, 이미지 정보 생성단계(S20)로 복귀하여 이미지 정보를 재입력 받는 단계이다.
구체적으로, 이미지 정보 재입력단계(S60)는, 스마트폰, 태블릿, PC 등의 사용자 단말에 이미지 정보 입력창을 표시하여 이미지 정보를 재입력 받는 단계이다.
이에, 변환 여부 확인단계(S50) 및 이미지 정보 재입력단계(S60)를 통해 사용자는 폰트 파일로 변환하는 시간을 낭비하지 않고 이미지 정보를 재입력하여 폰트를 재생성할 수 있다.
폰트 출력단계(S70)는, 변환 여부 확인단계(S50)에서 파일 변환을 입력 받을 경우, 출력부(600)에서 폰트 정보를 폰트 파일로 변환하여 출력하는 단계이다.
구체적으로, 폰트 출력단계(S70)는, 깨짐 현상 및 계단 현상을 방지하기 위해 폰트 정보를 벡터 이미지로 변환하고, Outline Font인 트루타입(TTF), 오픈타입(OTF)의 폰트 파일로 변환하여 스마트폰, 태블릿, PC 등의 사용자 단말에 폰트 파일을 출력하고 저장하는 단계이다.
이에, 폰트 생성 방법을 통해 사용자만의 고유의 폰트를 생성하여 제공할 수 있다.
도 13은 본 발명의 실시 예에 따른 폰트 생성 시스템을 이용한 폰트 생성 방법에 스케일 변환단계가 추가된 것을 도시한 흐름도이고, 도 14는 도 13의 스케일 변환단계를 도시한 흐름도이다.
도 13을 참조하면, 본 발명의 실시 예에 따른 폰트 생성 방법은, 스케일 변환단계(S45)를 더 포함할 수 있다.
스케일 변환단계(S45)는, 변환 여부 확인단계(S50) 이전에 이루어지는 단계로, 스케일 변환부(700)에서 분석단계(S40)를 통해 생성된 폰트 정보를 2차원 좌표평면상에 위치시키고, 폰트 정보의 최외각 점 정보를 추출하여 스케일 정보를 생성하는 단계이다.
이후, 스케일 정보를 기설정된 스케일 영역을 기반으로 변환하는 단계이다.
이때, 기설정된 스케일 영역(PS)은, 정사각형인 것이 바람직하나 이에 한정하지 않는다.
또한, 기설정된 스케일 영역(PS)은, 자음, 모음, 홑받침, 겹받침 등 문자의 쓰임에 따라 상이하게 설정될 수 있다.
구체적으로, 도 14를 참조하면, 스케일 변환단계(S45)는, 최외각 점 추출단계(S451), 스케일 생성단계(S452) 및 스케일 조절단계(S453)를 포함할 수 있다.
최외각 점 추출단계(S451)는, 최외각 점 추출 모듈(710)에서 분석단계(S40)를 통해 생성된 폰트 정보에 2차원 좌표평면을 적용하고 하나 이상의 최외각 점을 추출하여 최외각 점 정보(OP)를 생성하는 단계이다.
구체적으로, 최외각 점 추출단계(S451)는, 좌표평면에서 폰트 정보의 상, 하, 좌, 우의 최외각에 있는 점을 인식하여 최외각 점 정보(OP)를 생성하는 단계이다.
이때, 최외각 점 추출단계(S451)는, 하나의 점이 아닌 여러 개의 연속되는 점이 최외각 점으로 추출되었을 경우, 동일선상에 있는 점들 중 하나의 점만 최외각 점 정보(OP)로 추출할 수 있다.
여기서, 최외각 점 추출단계(S451)는, 동일선상에 여러 개의 점들 중 중앙에 위치하는 하나의 점을 최외각 점 정보(OP)로 추출하는 것이 바람직하다.
스케일 생성단계(S452)는, 스케일 생성 모듈(720)에서 최외각 점 추출단계(S451)를 통해 생성된 최외각 점 정보(OP)로부터, 수직, 수평으로 연장되는 연장선(L)을 그어 각각의 연장선(L)이 겹치는 부분의 접합 점 정보(OP)를 추출하는 단계이다.
이후, 접합 점 정보(OP) 중 최외각 접합 점 정보(OJP)로 형성된 스케일 정보(S)를 생성하는 단계이다.
이때, 스케일 정보(S)는, 각각의 최외각 접함 점 정보(OJP)를 꼭짓점으로 하여, 각각의 최외각 접함 점 정보(OJP)가 이어진 다각형의 형태로 형성될 수 있다.
이에, 스케일 정보(S)는, 4개의 모서리를 형성할 수 있다.
또한, 스케일 정보(S)는, 폰트 정보마다 상이하게 형성될 수 있다.
스케일 조절단계(S453)는, 스케일 조절 모듈(730)에서 스케일 생성단계(S452)를 통해 생성된 스케일 정보(S)를 기설정된 스케일 영역(PS)에 맞게 비율을 조절하는 단계이다.
이때, 스케일 정보(S)는 기설정된 스케일 영역(PS)의 상, 하, 좌, 우 중 어느 하나 이상에 맞닿게 조절될 수 있다.
구체적으로, 스케일 조절단계(S453)는, 스케일 정보(S)의 4개의 모서리 중 어느 하나 이상의 기설정된 스케일 영역(PS)에 맞닿을 때까지 스케일 정보(S)를 조절이 이루어질 수 있다.
이때, 스케일 정보(S)는 폰트 정보의 형태가 변형되는 것을 방지하기 위해 크기가 비율을 유지하며 조절되는 것이 바람직하다.
이에, 스케일 변환단계(S45)를 통해 폰트 크기를 일관화하여 폰트의 일부분이 누락되거나, 다른 폰트에 비해 크기가 작게 형성되는 것을 방지할 수 있다.
이상에서 설명한 본 발명의 실시 예는 시스템 및/또는 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시 예의 구성에 대응하는 기능을 실현하기 위한 시스템, 그 시스템에 사용된 구성 등을 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시 예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다.
또한, 이상에서 본 발명의 실시 예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
1 : 폰트 생성 시스템
100 : 데이터 베이스부
200 : 입력부
300 : 전처리부
310 : 이미지 변환 모듈
320 : 문자 인식 모듈
330 : 개별 문자 추출 모듈
340 : 잡영 제거 모듈
350 : 문자 패턴 학습 모듈
400 : 분석부
410 : 가상 폰트 생성 모듈
420 : 폰트 유사도 산출 모듈
430 : 폰트 정보 분석 모듈
500 : 확인부
600 : 출력부
700 : 스케일 변환부
710 : 최외각 점 추출 모듈
720 : 스케일 생성 모듈
730 : 스케일 조절 모듈
JP : 접합 점 정보
L : 연장선
OJP : 최외각 접합 점 정보
OP : 최외각 점 정보
PS : 기설정된 스케일 영역
S : 스케일 정보

Claims (10)

  1. 다수의 문자 데이터 정보를 저장하는 데이터 베이스부;
    이미지 정보를 입력 받아 문자열 이미지 정보를 생성하는 입력부;
    상기 문자열 이미지 정보로부터 개별 문자 정보를 추출하고 문자 패턴을 학습하여 문자 패턴 정보를 생성하는 전처리부;
    상기 문자 패턴 정보를 상기 문자 데이터 정보와 비교하여 스타일 전이 방식을 통해 상기 문자 패턴 정보를 분석하고 폰트 정보를 생성하는 분석부;
    상기 폰트 정보를 사용자에게 표시하고 파일 변환 여부를 입력 받는 확인부 및
    상기 폰트 정보를 폰트 파일로 변환하여 출력하는 출력부를 포함하고,
    상기 확인부는, 파일 변환을 입력 받지 않을 경우, 상기 이미지 정보를 재입력 받는 것을 특징으로 하는 폰트 생성 시스템.
  2. 제 1항에 있어서,
    상기 전처리부는,
    상기 문자열 이미지 정보에 단색 음영을 적용하여 단색 문자열 정보로 변환하는 이미지 변환 모듈;
    상기 단색 문자열 정보에서 문자에 대한 영역을 인식하여 문자 정보를 추출하는 문자 인식 모듈;
    상기 문자 정보의 테두리를 팽창시켜 개별 문자에 대한 인식도를 높이고, 상기 개별 문자를 그룹화하여 개별 문자 정보를 추출하는 개별 문자 추출 모듈;
    상기 개별 문자 정보의 테두리를 침식시켜 상기 개별 문자 정보의 끊어진 점이 있는 선을 제거하는 잡영 제거 모듈 및
    상기 개별 문자 정보의 테두리를 축소시키고, 테두리를 따라 문자 패턴을 학습하여 상기 문자 패턴 정보를 생성하는 문자 패턴 학습 모듈을 포함하는 폰트 생성 시스템.
  3. 제 1항에 있어서,
    상기 분석부는,
    상기 문자 패턴 정보에 다수의 상기 문자 데이터 정보를 적용하여 다수의 가상 폰트 정보를 생성하는 가상 폰트 생성 모듈;
    상기 가상 폰트 정보와 상기 문자 패턴 정보를 비교하여 유사도를 산출하는 폰트 유사도 산출 모듈 및
    상기 가상 폰트 정보 중 가장 높은 유사도를 가진 상기 가상 폰트 정보를 기반으로 상기 폰트 정보를 생성하는 폰트 정보 분석 모듈을 포함하는 폰트 생성 시스템.
  4. 제 1항에 있어서,
    상기 폰트 생성 시스템은,
    상기 폰트 정보를 2차원 좌표평면상에 위치시키고, 상기 폰트 정보의 최외각 점 정보를 추출하여 스케일 정보를 생성하며, 상기 스케일 정보를 기설정된 스케일 영역을 기반으로 변환하는 스케일 변환부를 더 포함하는 폰트 생성 시스템.
  5. 제 4항에 있어서,
    상기 스케일 변환부는,
    상기 폰트 정보에 2차원 좌표평면을 적용하고 하나 이상의 최외각 점을 추출하여 최외각 점 정보를 생성하는 최외각 점 추출 모듈;
    상기 최외각 점 정보로부터, 수직, 수평으로 연장되는 연장선을 그어 각각의 연장선이 겹치는 부분의 접합 점 정보를 추출하고, 상기 접합 점 정보 중 최외각 접합 점 정보로 형성된 스케일 정보를 생성하는 스케일 생성 모듈 및
    상기 스케일 정보를 상기 기설정된 스케일 영역에 맞게 비율을 조절하는 스케일 조절 모듈을 포함하는 폰트 생성 시스템.
  6. 데이터 베이스부에서 다수의 문자 데이터 정보를 저장하는 문자 데이터 정보 저장단계;
    입력부에서 이미지 정보를 입력 받아 문자열 이미지 정보를 생성하는 이미지 정보 생성단계;
    전처리부에서 상기 문자열 이미지 정보로부터 개별 문자 정보를 추출하고 문자 패턴을 학습하여 문자 패턴 정보를 생성하는 전처리단계;
    분석부에서 상기 문자 패턴 정보를 상기 문자 데이터 정보와 비교하여 스타일 전이 방식을 통해 상기 문자 패턴 정보를 분석하여 폰트 정보를 생성하는 분석단계;
    확인부에서 상기 폰트 정보를 사용자에게 표시하고 파일 변환 여부를 확인하는 변환 여부 확인단계;
    상기 변환 여부 확인단계에서 파일 변환을 입력 받지 않을 경우, 상기 이미지 정보 생성단계로 복귀하여 상기 이미지 정보를 재입력 받는 이미지 정보 재입력단계 및
    상기 변환 여부 확인단계에서 파일 변환을 입력 받을 경우, 출력부에서 상기 폰트 정보를 폰트 파일로 변환하여 출력하는 폰트 출력단계를 포함하는 폰트 생성 방법.
  7. 제 6항에 있어서,
    상기 전처리단계는,
    이미지 변환 모듈에서 상기 문자열 이미지 정보를 단색 음영을 적용하여 단색 문자열 정보로 변환하는 이미지 변환단계;
    문자 인식 모듈에서 상기 단색 문자열 정보의 문자에 대한 영역을 인식하여 문자 정보를 추출하는 문자 정보 추출단계;
    개별 문자 추출 모듈에서 상기 문자 정보의 테두리를 팽창시켜 개별 문자에 대한 인식도를 높이고, 상기 개별 문자를 그룹화하여 개별 문자 정보를 추출하는 개별 문자 정보 추출단계;
    잡영 제거 모듈에서 상기 개별 문자 정보의 테두리를 침식시켜 상기 개별 문자 정보의 끊어진 점이 있는 선을 제거하는 잡영 제거단계 및
    패턴 학습 모듈에서 상기 개별 문자 정보의 테두리를 축소시키고, 테두리를 따라 문자 패턴을 학습하여 상기 문자 패턴 정보를 생성하는 문자 패턴 학습단계를 포함하는 폰트 생성 방법.
  8. 제 6항에 있어서,
    상기 분석단계는,
    가상 폰트 생성 모듈에서 상기 문자 패턴 정보에 상기 문자 데이터 정보를 적용하여 다수의 가상 폰트 정보를 생성하는 가상 폰트 생성 단계;
    폰트 유사도 산출 모듈에서 상기 가상 폰트 정보와 상기 문자 패턴 정보를 비교하여 유사도를 산출하는 폰트 유사도 산출단계 및
    폰트 정보 분석 모듈에서 상기 가상 폰트 정보 중 가장 높은 유사도를 가진 상기 가상 폰트 정보를 기반으로 상기 폰트 정보를 생성하는 폰트 정보 생성단계를 포함하는 폰트 생성 방법.
  9. 제 6항에 있어서,
    상기 변환 여부 확인단계 이전에,
    스케일 변환부에서 상기 폰트 정보를 2차원 좌표평면상에 위치시키고, 상기 폰트 정보의 최외각 점 정보를 추출하여 스케일 정보를 생성하며, 상기 스케일 정보를 기설정된 스케일 영역을 기반으로 변환하는 스케일 변환단계를 더 포함하는 폰트 생성 방법.
  10. 제 9항에 있어서,
    상기 스케일 변환단계는,
    최외각 점 추출 모듈에서 상기 폰트 정보에 2차원 좌표평면을 적용하고 하나 이상의 최외각 점을 추출하여 최외각 점 정보를 생성하는 최외각 점 추출단계;
    스케일 생성 모듈에서 상기 최외각 점 정보로부터, 수직, 수평으로 연장되는 연장선을 그어 각각의 연장선이 겹치는 부분의 접합 점 정보를 추출하고, 상기 접합 점 정보 중 최외각 접합 점 정보로 형성된 스케일 정보를 생성하는 스케일 생성단계 및
    스케일 조절 모듈에서 상기 스케일 정보를 상기 기설정된 스케일 영역에 맞게 비율을 조절하는 스케일 조절단계를 포함하는 폰트 생성 방법.
KR1020210177771A 2021-12-13 2021-12-13 폰트 생성 시스템 및 이를 이용한 폰트 생성 방법 KR102616255B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210177771A KR102616255B1 (ko) 2021-12-13 2021-12-13 폰트 생성 시스템 및 이를 이용한 폰트 생성 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210177771A KR102616255B1 (ko) 2021-12-13 2021-12-13 폰트 생성 시스템 및 이를 이용한 폰트 생성 방법

Publications (2)

Publication Number Publication Date
KR20230089273A true KR20230089273A (ko) 2023-06-20
KR102616255B1 KR102616255B1 (ko) 2023-12-19

Family

ID=86995339

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210177771A KR102616255B1 (ko) 2021-12-13 2021-12-13 폰트 생성 시스템 및 이를 이용한 폰트 생성 방법

Country Status (1)

Country Link
KR (1) KR102616255B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101945708B1 (ko) * 2017-04-21 2019-02-08 (주)폰트릭스 편집 폰트를 구현하는 방법 및 장치
KR20190093752A (ko) * 2018-01-10 2019-08-12 네이버 주식회사 딥 러닝을 이용한 씬 텍스트 검출 방법 및 시스템
KR20210037280A (ko) * 2019-09-27 2021-04-06 이현규 손 글씨를 이용한 폰트 제작 방법
KR20210128603A (ko) * 2020-04-17 2021-10-27 네이버 주식회사 폰트 생성 방법 및 시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101945708B1 (ko) * 2017-04-21 2019-02-08 (주)폰트릭스 편집 폰트를 구현하는 방법 및 장치
KR20190093752A (ko) * 2018-01-10 2019-08-12 네이버 주식회사 딥 러닝을 이용한 씬 텍스트 검출 방법 및 시스템
KR20210037280A (ko) * 2019-09-27 2021-04-06 이현규 손 글씨를 이용한 폰트 제작 방법
KR20210128603A (ko) * 2020-04-17 2021-10-27 네이버 주식회사 폰트 생성 방법 및 시스템

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
고홍희 et.al, 딥러닝 기반의 한글 폰트 연구를 위한 한글 폰트 데이터셋, 정보처리학회논문지. KIPS transactions on software and data engineering. 소프트웨어 및 데이터 공학, 한국정보처리학회, Feb. 2021, Vol.10, no.2, pp.73-78* *

Also Published As

Publication number Publication date
KR102616255B1 (ko) 2023-12-19

Similar Documents

Publication Publication Date Title
JP6595714B2 (ja) 動的な効果を有する2次元コード画像を生成するための方法および装置
CN114005123B (zh) 一种印刷体文本版面数字化重建系统及方法
EP2569930B1 (en) Segmentation of a word bitmap into individual characters or glyphs during an ocr process
KR102472821B1 (ko) 혼합 조판 문자를 인식하는 방법, 기기, 칩 회로 및 컴퓨터 프로그램 제품
WO1990001198A1 (en) Character recognition apparatus
JP5906788B2 (ja) 文字切り出し方法、およびこの方法を用いた文字認識装置およびプログラム
CN115392188A (zh) 基于不可编辑的图文类图像生成可编辑文档的方法及装置
KR102616255B1 (ko) 폰트 생성 시스템 및 이를 이용한 폰트 생성 방법
CN110991440A (zh) 一种像素驱动的手机操作界面文本检测方法
JP6337680B2 (ja) 画像処理システム、画像処理装置、プログラム及び画像処理方法
CN116778497A (zh) 一种人手井编号识别方法、装置、计算机设备和存储介质
US8165404B2 (en) Method and apparatus for creating document data, and computer program product
KR20160053544A (ko) 후보 문자의 추출 방법
CN112200158B (zh) 训练数据生成方法及系统
CN114639106A (zh) 图文识别方法、装置、计算机设备及存储介质
JP5439069B2 (ja) 文字認識装置及び文字認識方法
CN114255464A (zh) 基于craft和scrn-seed框架的自然场景文字检测识别方法
KR101651842B1 (ko) 전자문서 레이아웃 생성 방법 및 장치
CN113033325A (zh) 图像处理方法及装置、智能发票识别设备和存储介质
CN112419208A (zh) 一种基于施工图审查矢量图纸编译方法及系统
TWI633498B (zh) Image processing device, image processing method, and program product
CN115497115B (zh) 基于深度学习的页眉页脚检测方法及系统
JP2006277149A (ja) 文字画像切出装置、文字画像切出方法およびプログラム
JP2020119291A (ja) 情報処理装置及びプログラム
US11132496B2 (en) Electronic book display device, electronic book display method, and program

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant